ef190f2d66cl-structures: Add get_many_mut implementation for Pool (currently delegates to unstable std)John2024-04-21 22:32:47 -05:00
9c3c2e8674cl-parser: Implement a module inlining passJohn2024-04-21 22:31:01 -05:00
02323ae6f2cl-parser: Sync error::Parsing with cl-astJohn2024-04-21 21:20:55 -05:00
e36a684422grammar: Make UseTree less ultra-jankyJohn2024-04-21 18:57:46 -05:00
5341631781conlang: Add constructor expression for structs!John2024-04-20 15:02:16 -05:00
efd442bbfaconlang: Import items into scope with use!John2024-04-20 14:51:54 -05:00
9dc0cc7841cl-interpret: Give the interpreter a little loveJohn2024-04-19 10:49:25 -05:00
90a3818ca0conlang: Move all cl-libs into the compiler directoryJohn2024-04-19 07:39:23 -05:00
2a62a1c714repline: Promote to its own crate!John2024-04-19 07:30:17 -05:00
01ffdb67a6cl-ast: Add Fold and Visit traits, to more easily map or collect nodes in the ASTJohn2024-04-19 03:21:07 -05:00
de024b6cb7cl-repl: Remove references to the old ResolverJohn2024-04-19 03:01:24 -05:00
2834e4a8eacl-ast: Fix typo in format.rsJohn2024-04-19 02:47:55 -05:00
4ff101f0eeyaml.rs: Fix extraneous pair in WhileJohn2024-04-18 23:58:44 -05:00
1fa027a0c2cl-ast: Move AST into its own moduleJohn2024-04-18 21:31:46 -05:00
9a687624fcstdlib: Add some funky syntax testsJohn2024-04-18 21:10:11 -05:00
e102ae25b4typeck.rs: Make the REPL output a little less unreadableJohn2024-04-18 21:05:59 -05:00
a56ee38b15cl-parser: General cleanup and maintenance - Made infallible rules infallible - Don't double-check keywords where keywords are required. - Of course, this change means rules aren't self-contained - Rename the Call precedence level - Made member-access operators left-associative - Removed the useless Nothing error type. :(John2024-04-18 21:04:16 -05:00
f315fb5af7cl-ast: Overhaul pretty-printing using std::fmt::Write adapters.John2024-04-18 20:47:28 -05:00
e4f270da17cl-ast: Re-order items for aesthetic reasonsJohn2024-04-18 20:22:08 -05:00
17a522b633cl-parser: Make break bodies actually optionalJohn2024-04-18 16:42:48 -05:00
736fc37a81repline: Remove Ignore trait, make debug output backspace-ableJohn2024-04-18 01:56:45 -05:00
02b775259ecl-ast: Change loop expression to take any expression as its argument, for later desugaring.John2024-04-18 01:53:32 -05:00
00d72b823aconlang: Add unconditional loop expression, for desugaringJohn2024-04-17 00:29:09 -05:00
ec1a1255adcl-structures: Add helper for getting index from pool. May delete later.John2024-04-16 23:48:05 -05:00
0e8b4f68c3repline: Word-deletion, and proper history reloading!John2024-04-16 23:47:10 -05:00
eee9e99aedcl-ast: add todo about slice and array type-expressionsJohn2024-04-16 23:46:24 -05:00
f6e44f3773cl-ast: Print space between items :-)John2024-04-16 23:45:54 -05:00
a31d285d99grammar.ebnf: Clean up grammar - TODO: Member access is totally broken lmaoJohn2024-04-06 01:02:31 -05:00
a036ce260dcl-ast: Add doc comments for every node This improves the rustdoc output somewhatJohn2024-04-03 13:19:57 -05:00
4a52d2bc6aconlang: Update type checker - cl-typeck: Add modules, intrinsic types, unify definition ids - cl-ast: make attribute lists Default - cl-structures: Add functions to iterate through a pool - cl-repl: Create an example REPL for the type checkerJohn2024-04-01 05:14:06 -05:00
7b40ddc845cl-ast: destination side of type alias should be an identifierJohn2024-04-01 04:20:26 -05:00
bdf0bb68cacl-ast: improve formatting of enumsJohn2024-04-01 04:18:31 -05:00
8ee318f26bcl-ast: Move ExprKind::Assign outside the box, to be more consistent with other uses of ExprJohn2024-03-28 16:34:24 -05:00
ba148ef5decl-typeck: Continue work on symbol namespaces - Refactor for cl-structures intern pool - Create a list of types the compiler is supposed to care about/have implementations for (Intrinsic/primitive types) - Add modules and projects (the sym equivalent of ast::File) - Flesh out value definitions - TODO: Create an IR for statements and expressions, and lower the AST into itJohn2024-03-27 01:54:19 -05:00
8cbe570811cl-structures: Sketch out a type-safe generic interning poolJohn2024-03-27 01:26:27 -05:00
66c29d601ccl-structures: Tree cleanupJohn2024-03-27 01:25:19 -05:00
9f9a21b4c3cl-repl: Add example that prints the AST in a more friendly way than Debug but in a more verbose way than DisplayJohn2024-03-27 01:24:28 -05:00
2cdf112aa6cl-structures: add todo w/r/t tree traversal apiJohn2024-03-15 05:53:26 -05:00
af35dd1bb3cl-structures: add a sized, monotype stackJohn2024-03-15 05:11:47 -05:00
ecde44910fcl-structures: Add a simple potted tree structure, for future use in the module systemJohn2024-03-15 05:10:34 -05:00
a74cd0b8accl-structures: break span into its own file.John2024-03-12 19:32:11 -05:00
2eade74d3acl-repl: Terminal pipe support + fun stylistic fixupsJohn2024-03-01 05:33:35 -06:00
9cae7e4eb8cl-lexer: switch to unicode-ident crate, since a dependency of cl-repl depends on it.John2024-03-01 04:11:38 -06:00
a07312bf92cl-lexer: fix link in doc commentJohn2024-03-01 03:17:43 -06:00