Commit Graph

60 Commits

Author SHA1 Message Date
96ee9c4307 Added notes on multiple-binding let-exprs 2023-08-06 17:29:54 -06:00
a00bbe26b4 Update todo list 2023-08-06 17:27:48 -06:00
8619f67b91 Get rid of extra runtime type checks 2023-08-06 17:14:18 -06:00
93215cd294 Include correct tokens in pattern mismatch errors 2023-08-06 17:07:00 -06:00
7d006d8889 Add dynamic bindings and better error positions 2023-08-06 15:44:15 -06:00
a7421927ae Use uppercase field names in Token 2023-07-25 13:19:07 -06:00
64fac5a9fb Remove Name type and add quoted identifier token 2023-07-16 23:30:20 -06:00
9dfdf1109e Added TODO.txt 2023-07-16 19:49:27 -06:00
de2fa22869 Include richer position data in tokens 2023-07-16 19:47:42 -06:00
9ea27888cb Evaluate when-exprs 2023-07-11 13:55:06 -06:00
7741b7c4ad Added record extension field punning 2023-07-11 13:14:02 -06:00
fc710d038f Added record update field punning 2023-07-11 13:12:02 -06:00
c12a0cffc8 Implemented pattern matching in let-exprs 2023-07-11 12:59:15 -06:00
ca97c93181 Evaluate let-exprs with simple bindings 2023-07-11 00:51:51 -06:00
108870c731 Rename Identifier to Variable 2023-07-07 21:29:17 -06:00
f9df52b5f9 Evaluate all non-binding expressions 2023-07-06 02:29:04 -06:00
b1607eebc6 Evaluate arithmetic expressions 2023-07-06 01:11:00 -06:00
6459e39260 Fixed typo in RecordPattern.ToString 2023-07-05 10:24:03 -06:00
4f606e0e30 Allow arbitrary patterns as func params 2023-07-05 10:23:34 -06:00
eed952d154 Parse function bindings 2023-07-05 10:18:27 -06:00
4fe56dbdbc Removed commented code 2023-07-05 08:53:28 -06:00
d498cc627b Parse when-expressions 2023-07-05 08:52:14 -06:00
86a9241632 Removed unused consume overload 2023-07-02 17:09:34 -06:00
f43e0464b6 Parse record patterns 2023-07-02 17:07:46 -06:00
b5bdd95605 Parse let exprs with simple and variant patterns 2023-07-02 16:37:06 -06:00
ef3de7a707 Generate pattern-matching nodes 2023-07-02 14:56:50 -06:00
82d911d5dd Converted AST classes to records 2023-07-02 14:27:12 -06:00
04689beec3 FIxed null warnings 2023-07-02 13:19:42 -06:00
bd135f0203 Fix outdated expression rule in grammar 2023-07-02 12:27:53 -06:00
57cd5b3a9e Parse function calls 2023-07-02 12:05:46 -06:00
6f742ec577 Allow trailing comma in function call grammar 2023-07-02 12:05:39 -06:00
aca4f669ad Parse indexing expressions 2023-07-02 11:46:18 -06:00
5f9b4a2fb6 Allow trailing comma in list and record grammars 2023-07-02 11:39:37 -06:00
63edbae650 Parse record literals 2023-07-02 11:38:48 -06:00
5b0ca1ca6d Parse variants 2023-07-01 23:30:24 -06:00
8de88c0ce3 Parse list literals 2023-07-01 23:13:24 -06:00
6ab36fc489 Added some throwing stubs to parser 2023-07-01 00:26:32 -06:00
6fd622a573 Moved compound literals to primary in grammar 2023-07-01 00:26:11 -06:00
6f3c82cad1 Added identifiers and field selectors to grammar 2023-07-01 00:12:02 -06:00
9b2f0cb968 Removed pipeline and compose operators 2023-06-29 12:54:40 -06:00
f1b373c7e6 Added function calls and bindings to grammar 2023-06-29 11:33:32 -06:00
df0c370059 Added let-exprs to grammar, and fixed patterns 2023-06-29 10:55:13 -06:00
138508732f Added when expressions to grammar 2023-06-29 10:10:41 -06:00
e508d06b1a Finished specifying record grammar 2023-06-29 09:55:45 -06:00
c0767bc386 Rearrange control expression parsing 2023-06-28 17:25:28 -06:00
84a888738a Parse sequencing expressions 2023-06-28 17:18:31 -06:00
b72c6e9992 Parse string concatenation 2023-06-28 16:38:00 -06:00
ba5283694e Parse if-expressions 2023-06-28 16:26:08 -06:00
1264aca7f3 Added arbitrary-string idents to grammar 2023-06-28 16:06:44 -06:00
aa440742ca Added keyword for multi-binding let 2023-06-28 15:53:04 -06:00