Commit Graph

  • 103a457f05 Incomplete parsing is not a bug at this point master b 2024-05-09 09:37:20 -06:00
  • 0b5c882b18 Updated and organized bibliography b 2024-01-30 21:27:26 -07:00
  • 6877ffd2c2 Added type system questions to TODO b 2023-12-28 22:52:28 -07:00
  • 438c883047 Added bibliography b 2023-12-28 22:52:15 -07:00
  • 021658695c Removed dynamic type checks from interpreter b 2023-10-04 17:31:39 -06:00
  • 6e88a41b72 Wire up resolver to interpreter b 2023-10-04 17:13:48 -06:00
  • 5168890ea0 Return a dictionary of resolutions from Resolver b 2023-10-04 12:31:10 -06:00
  • ce7a755b07 Pass around an immutable scope stack in resolver b 2023-10-04 00:05:10 -06:00
  • d5ffd1e414 Added half-baked resolver b 2023-10-03 23:32:24 -06:00
  • bc57ed9df0 Allow variable defs to use earlier names in list b 2023-09-27 22:38:32 -06:00
  • 352fa9616e Implemented closure and therefore recursion b 2023-09-27 22:34:38 -06:00
  • ab38d85465 Implemented native function calls b 2023-09-27 18:16:19 -06:00
  • 43fcb615fb Remove dynamic bindings from strawman b 2023-08-15 21:42:04 -06:00
  • 96ee9c4307 Added notes on multiple-binding let-exprs b 2023-08-06 17:29:54 -06:00
  • a00bbe26b4 Update todo list b 2023-08-06 17:27:48 -06:00
  • 8619f67b91 Get rid of extra runtime type checks b 2023-08-06 17:14:18 -06:00
  • 93215cd294 Include correct tokens in pattern mismatch errors b 2023-08-06 17:07:00 -06:00
  • 7d006d8889 Add dynamic bindings and better error positions b 2023-08-06 15:44:15 -06:00
  • a7421927ae Use uppercase field names in Token b 2023-07-25 13:19:07 -06:00
  • 64fac5a9fb Remove Name type and add quoted identifier token b 2023-07-16 23:30:20 -06:00
  • 9dfdf1109e Added TODO.txt b 2023-07-16 19:49:27 -06:00
  • de2fa22869 Include richer position data in tokens b 2023-07-16 19:47:42 -06:00
  • 9ea27888cb Evaluate when-exprs b 2023-07-11 13:55:06 -06:00
  • 7741b7c4ad Added record extension field punning b 2023-07-11 13:14:02 -06:00
  • fc710d038f Added record update field punning b 2023-07-11 13:12:02 -06:00
  • c12a0cffc8 Implemented pattern matching in let-exprs b 2023-07-11 12:59:15 -06:00
  • ca97c93181 Evaluate let-exprs with simple bindings b 2023-07-11 00:51:51 -06:00
  • 108870c731 Rename Identifier to Variable b 2023-07-07 21:29:17 -06:00
  • f9df52b5f9 Evaluate all non-binding expressions b 2023-07-06 02:29:04 -06:00
  • b1607eebc6 Evaluate arithmetic expressions b 2023-07-06 01:11:00 -06:00
  • 6459e39260 Fixed typo in RecordPattern.ToString b 2023-07-05 10:24:03 -06:00
  • 4f606e0e30 Allow arbitrary patterns as func params b 2023-07-05 10:23:34 -06:00
  • eed952d154 Parse function bindings b 2023-07-05 10:18:27 -06:00
  • 4fe56dbdbc Removed commented code b 2023-07-05 08:53:28 -06:00
  • d498cc627b Parse when-expressions b 2023-07-05 08:52:14 -06:00
  • 86a9241632 Removed unused consume overload b 2023-07-02 17:09:34 -06:00
  • f43e0464b6 Parse record patterns b 2023-07-02 17:07:46 -06:00
  • b5bdd95605 Parse let exprs with simple and variant patterns b 2023-07-02 16:37:06 -06:00
  • ef3de7a707 Generate pattern-matching nodes b 2023-07-02 14:56:50 -06:00
  • 82d911d5dd Converted AST classes to records b 2023-07-02 14:27:12 -06:00
  • 04689beec3 FIxed null warnings b 2023-07-02 13:19:42 -06:00
  • bd135f0203 Fix outdated expression rule in grammar b 2023-07-02 12:27:53 -06:00
  • 57cd5b3a9e Parse function calls b 2023-07-02 12:05:46 -06:00
  • 6f742ec577 Allow trailing comma in function call grammar b 2023-07-02 12:05:39 -06:00
  • aca4f669ad Parse indexing expressions b 2023-07-02 11:46:18 -06:00
  • 5f9b4a2fb6 Allow trailing comma in list and record grammars b 2023-07-02 11:39:37 -06:00
  • 63edbae650 Parse record literals b 2023-07-02 11:38:48 -06:00
  • 5b0ca1ca6d Parse variants b 2023-07-01 23:30:24 -06:00
  • 8de88c0ce3 Parse list literals b 2023-07-01 23:13:24 -06:00
  • 6ab36fc489 Added some throwing stubs to parser b 2023-07-01 00:26:32 -06:00
  • 6fd622a573 Moved compound literals to primary in grammar b 2023-07-01 00:26:11 -06:00
  • 6f3c82cad1 Added identifiers and field selectors to grammar b 2023-07-01 00:12:02 -06:00
  • 9b2f0cb968 Removed pipeline and compose operators b 2023-06-29 12:54:40 -06:00
  • f1b373c7e6 Added function calls and bindings to grammar b 2023-06-29 11:33:32 -06:00
  • df0c370059 Added let-exprs to grammar, and fixed patterns b 2023-06-29 10:55:13 -06:00
  • 138508732f Added when expressions to grammar b 2023-06-29 10:10:41 -06:00
  • e508d06b1a Finished specifying record grammar b 2023-06-29 09:55:45 -06:00
  • c0767bc386 Rearrange control expression parsing b 2023-06-28 17:25:28 -06:00
  • 84a888738a Parse sequencing expressions b 2023-06-28 17:18:31 -06:00
  • b72c6e9992 Parse string concatenation b 2023-06-28 16:38:00 -06:00
  • ba5283694e Parse if-expressions b 2023-06-28 16:26:08 -06:00
  • 1264aca7f3 Added arbitrary-string idents to grammar b 2023-06-28 16:06:44 -06:00
  • aa440742ca Added keyword for multi-binding let b 2023-06-28 15:53:04 -06:00
  • 3fbe0f482f Added partial draft of grammar doc b 2023-06-28 15:52:39 -06:00
  • 36a7b4dba3 Added strawman designs b 2023-06-28 15:51:45 -06:00
  • 77b1fab74f Parse a subset of expressions b 2023-06-28 12:12:14 -06:00
  • b9b8c8e24b Added an AST printer b 2023-06-26 13:47:31 -07:00
  • cbefb3cf40 Config dev environment for F# b 2023-06-24 18:15:55 -07:00
  • e27c6c6165 Set up AST class generation b 2023-06-24 18:15:37 -07:00
  • f3e99ee76d Use record syntax for Token b 2023-06-08 08:16:32 -06:00
  • 64fdd430be Debug with terminal to get interactive stdin b 2023-06-08 08:01:21 -06:00
  • 0d36ba4a52 Fix number parsing and add ++ operator b 2023-06-08 08:00:26 -06:00
  • c991893f76 Lexer b 2023-06-08 07:26:41 -06:00