9d60f366cf
add #![log] pragma
2024-04-12 21:53:54 +02:00
68d8019f00
add let
to frontend syntax
2023-12-04 18:56:45 +01:00
d9cdf1306d
fix IsReserved
...
IsReserved should be true for e.g. "λ" but not "fun", since only the
first can show up in the lexer output
2023-11-05 15:43:20 +01:00
6c8ebfb804
fix some comments
2023-11-05 15:41:21 +01:00
f58fa5218f
subscript numbers are no longer special
2023-11-05 15:39:52 +01:00
e211887a34
string/nat lit stuff
2023-11-05 15:38:13 +01:00
90cdcfe4da
add \n and \t escapes to the lexer
2023-11-03 20:07:59 +01:00
e0ed37720f
always vsep scheme lets, otherwise they are unreadable
2023-11-03 18:05:54 +01:00
050346e344
add postulate, #[compile-scheme], #[main]
2023-11-03 18:05:54 +01:00
69f032584e
fix constructor name in comment
2023-11-03 17:56:42 +01:00
f04c4619ef
detect reserved words inside names like 'a.λ.b'
2023-09-24 17:36:26 +02:00
d4de74eab6
change it to #[..] since # is also reserved
2023-09-22 18:38:40 +02:00
d4cfbd4045
add @[fail] modifier to declarations
...
- `@[fail] def foo = ...` succeeds if `foo` has some error.
- `@[fail "scope"] def foo = ...` succeeds if `foo` has some error
containing the word "scope" somewhere
- `@[fail] namespace foo { }` works too and the error must be anywhere
in the namespace
2023-09-22 14:03:22 +02:00
bb8d2464af
add fst and snd
2023-09-18 21:53:38 +02:00
42aa07c9c8
crude but effective stratification
2023-05-21 20:34:05 +02:00
a5ccf0215a
coercions and compositions
2023-04-15 15:13:01 +02:00
38dbd275a1
add case0
to syntax since that is possible sometimes
2023-04-02 15:52:55 +02:00
9250789219
natural numbers
2023-03-26 14:40:54 +02:00
f2272da4b4
replace '≔' and '·' with '=' and (only) '.'
2023-03-18 02:43:58 +01:00
be94422668
move name lexing stuff to Quox.Name
2023-03-16 18:34:49 +01:00
b9825fee55
??????
2023-03-16 18:20:33 +01:00
c81aabcc14
more parser/FromParser stuff
...
- top level semicolons optional
- type optional [the def will need to be an elim]
- `load` statement
- namespaces
2023-03-12 18:28:37 +01:00