-
11d368ab1a
Fix compile errors WIP.
main
Jesse Brault
2026-05-01 14:19:01 -0500
-
50884e38fa
New lowering methods WIP.
Jesse Brault
2026-04-22 10:35:56 -0400
-
4ae4f7e9e6
Work on new compile pipeline and semantic analysis flow WIP.
Jesse Brault
2026-04-12 17:24:37 -0500
-
96ea0c5e50
Resolve types WIP.
Jesse Brault
2026-04-09 13:55:55 -0500
-
3a75a0c8e8
Work on new name resolve methods WIP.
Jesse Brault
2026-04-06 20:43:30 -0500
-
fe8ab3601c
Add FileId to CompilationUnit.
Jesse Brault
2026-03-31 12:15:38 -0500
-
64526a0b1c
Small parser changes.
Jesse Brault
2026-03-30 14:04:29 -0500
-
f95d504f88
Another big parser refactor, collecting diagnostics better.
Jesse Brault
2026-03-28 20:50:46 -0500
-
0df1252053
Tiny changes.
Jesse Brault
2026-03-27 13:29:48 -0500
-
06fafb825a
Found some unused imports.
Jesse Brault
2026-03-27 12:00:57 -0500
-
584e7224a7
Compile pipeline WIP and various refactoring.
Jesse Brault
2026-03-27 11:59:59 -0500
-
178ce5d1a6
Immutable use of FqnContext.
Jesse Brault
2026-03-27 11:27:19 -0500
-
7d7626809d
Start work on mdbook.
Jesse Brault
2026-03-26 16:29:42 -0500
-
88487a911e
Organize repo by moving out old stuff.
Jesse Brault
2026-03-25 11:20:46 -0500
-
10221f6c3c
Switch back to stable rust.
Jesse Brault
2026-03-25 11:16:18 -0500
-
c5781114a5
Repl with let statements mostly working.
Jesse Brault
2026-03-25 10:12:05 -0500
-
655a0288d3
Some parser refactoring.
Jesse Brault
2026-03-23 15:47:37 -0500
-
53ec6a8f4f
Unused import.
Jesse Brault
2026-03-23 10:47:47 -0500
-
41e798d8a6
Refactor lexer for readability and less method calls.
Jesse Brault
2026-03-23 10:47:23 -0500
-
916b6377ac
All examples working again.
Jesse Brault
2026-03-21 18:18:28 -0500
-
bb2b539f9b
All tests passing again.
Jesse Brault
2026-03-21 18:04:13 -0500
-
4d6aa3ffd4
Fixing name checking for constructor assignment destinations. WIP.
Jesse Brault
2026-03-21 17:53:35 -0500
-
344761022b
More fixes to type info, etc. WIP.
Jesse Brault
2026-03-21 17:42:10 -0500
-
fc83cf7827
Preparing for intrinsic class symbols. WIP.
Jesse Brault
2026-03-21 11:36:42 -0500
-
7f1d507f4f
Fixing more bugs. WIP.
Jesse Brault
2026-03-21 10:55:47 -0500
-
912f208705
Fixing bugs. WIP.
Jesse Brault
2026-03-20 23:57:09 -0500
-
4e8fa159c0
Fewer tests failing. WIP.
Jesse Brault
2026-03-20 20:39:03 -0500
-
cf92356585
Major refactor of frontend ast semantic analysis. WIP.
Jesse Brault
2026-03-20 19:33:52 -0500
-
8724c07ae2
Refactor class ast node.
Jesse Brault
2026-03-18 15:12:51 -0500
-
7665a92678
Sketching class.
Jesse Brault
2026-03-18 10:37:38 -0500
-
42a5b994d2
Refactoring top-level constructs.
Jesse Brault
2026-03-17 11:26:57 -0500
-
86fcbb494b
Semantic analysis of generic args and params.
Jesse Brault
2026-03-16 12:15:05 -0500
-
3466908a80
Lexing/parsing generic args.
Jesse Brault
2026-03-16 10:21:00 -0500
-
b4094bf570
Sketching array-related things.
Jesse Brault
2026-03-15 19:18:27 -0500
-
0dce883dbd
op_prec example working.
Jesse Brault
2026-03-15 16:20:55 -0500
-
fa13697596
Instruction generation and implementation for shift and bitwise operators.
Jesse Brault
2026-03-15 16:18:09 -0500
-
7e72037d9e
Instruction generation and implementation for multiplicative operators.
Jesse Brault
2026-03-15 15:50:02 -0500
-
b0660c9e5a
Parsing and lexing bitwise operators.
Jesse Brault
2026-03-15 15:05:00 -0500
-
f0c84fe0c8
Parsing and lexing multiply, divide, modulo, shift operators.
Jesse Brault
2026-03-15 13:41:07 -0500
-
4a0a6b8425
Clean up ir vr_user trait and implementations.
Jesse Brault
2026-03-15 13:15:31 -0500
-
f9373a687f
Refactor to use IrBinaryOperation.
Jesse Brault
2026-03-15 12:55:00 -0500
-
863c3fef5d
Refactor to use BinaryExpression.
Jesse Brault
2026-03-15 12:18:38 -0500
-
5a123419bd
Assign statements ir and fixing some things.
Jesse Brault
2026-03-14 19:53:06 -0500
-
7e613b1b90
Parsing/analyzing assign statements.
Jesse Brault
2026-03-14 10:36:53 -0500
-
f7e8cef380
Yay! Class lookup and allocation e2e.
Jesse Brault
2026-03-13 20:21:49 -0500
-
0e24ce1784
Add fqn_context.
Jesse Brault
2026-03-13 17:19:25 -0500
-
5be778ba80
Fix some ir-related things with fields.
Jesse Brault
2026-03-13 16:19:53 -0500
-
8759c3be27
Lots of work e2e for reading/setting fields.
Jesse Brault
2026-03-13 09:16:41 -0500
-
54e2a170a2
VM-side work on values and objects to make it possible to locate fields.
Jesse Brault
2026-03-13 00:01:55 -0500
-
55a84a98b3
More work on getting example to compile, need to use fqns and proper returns.
Jesse Brault
2026-03-12 23:48:35 -0500
-
320cdcf805
Compiling fields getters/setters.
Jesse Brault
2026-03-12 21:52:21 -0500
-
51a80bb5ed
Add records to manual.
Jesse Brault
2026-03-12 18:41:41 -0500
-
940671822c
Add basic classes example.
Jesse Brault
2026-03-12 16:24:20 -0500
-
75802e6ee4
Expand diagnostic API.
Jesse Brault
2026-03-12 16:15:03 -0500
-
93eb5eb204
Add ability to call constructors.
Jesse Brault
2026-03-12 15:55:15 -0500
-
8082f4c2e6
Add type-checking to classes/fields/constructors.
Jesse Brault
2026-03-12 15:37:37 -0500
-
3c0bf948ac
Start writing documentation on compiler errors.
Jesse Brault
2026-03-12 15:17:34 -0500
-
ad821ce6a7
Add ctors, most name-analysis for classes/fields/constructors.
Jesse Brault
2026-03-12 12:35:36 -0500
-
75dcca0002
Name analysis for classes and affected things.
Jesse Brault
2026-03-11 22:15:23 -0500
-
efecd6b9c8
Complete negation operator.
Jesse Brault
2026-03-11 19:54:47 -0500
-
89f519c45f
Refactor scopes and symbol table for more resiliency and classes/fields.
Jesse Brault
2026-03-11 15:04:38 -0500
-
9790ec6ca6
Remove module_level_declaration ast node.
Jesse Brault
2026-03-11 12:14:50 -0500
-
80b6b96aeb
Implement lexing and parsing for classes.
Jesse Brault
2026-03-10 21:20:21 -0500
-
9df9edc508
Add doubles.
Jesse Brault
2026-03-10 17:32:02 -0500
-
7de866cf9d
Add return-type checking and fix string literal type-info bug.
Jesse Brault
2026-03-10 12:42:53 -0500
-
705436ba61
Add repl subcommand with expressions only.
Jesse Brault
2026-03-09 21:11:09 -0500
-
b88b230495
Make run subcommand.
Jesse Brault
2026-03-09 20:22:27 -0500
-
ebca87ddb9
A lot of work just to do subtraction.
Jesse Brault
2026-03-09 19:22:35 -0500
-
e35bacb583
Bunch of AST refactoring to make api easier.
Jesse Brault
2026-03-09 16:35:19 -0500
-
9d09f7481b
Add unary minus and subtraction to lexer/parser/ast node kinds.
Jesse Brault
2026-03-09 12:33:14 -0500
-
e486b212ae
Sketching dvm object.
Jesse Brault
2026-03-08 20:29:57 -0500
-
ec848b3d36
Add e2e-tests project and add register saving around calls.
Jesse Brault
2026-03-08 16:23:20 -0500
-
a7d162b2ca
Add backlog.
Jesse Brault
2026-03-08 13:35:12 -0500
-
ec7bf650b2
Add return mechanism to dvm code, and related fixes to dmc.
Jesse Brault
2026-03-08 13:33:06 -0500
-
2e33936842
Complete forgotten todo.
Jesse Brault
2026-03-08 13:16:04 -0500
-
12174c9cf6
Add stack offset propagation, clean up some deprecated things.
Jesse Brault
2026-03-08 13:11:07 -0500
-
12c4d0eb83
End-to-end with register allocation.
Jesse Brault
2026-03-08 01:27:09 -0600
-
1171ce75f9
Propagate register assignments.
Jesse Brault
2026-03-07 18:23:45 -0600
-
d8bd826cb0
Fix parse mistake.
Jesse Brault
2026-03-07 17:54:18 -0600
-
4479fcb1ba
Refactor register allocation code to separate module.
Jesse Brault
2026-03-07 17:53:34 -0600
-
5d565ccf91
Fix register allocation algorithm.
Jesse Brault
2026-03-06 20:16:00 -0600
-
8e9ae9ed98
Implement register allocation algorithm, with a few bugs.
Jesse Brault
2026-03-05 23:19:00 -0600
-
272d288213
Implement block/statement interference graph algorithm.
Jesse Brault
2026-03-05 20:41:25 -0600
-
c91bb35d8d
Giving more info to ir.
Jesse Brault
2026-03-05 16:30:39 -0600
-
15089a15d2
Re-introduce ir with goal of doing register allocation.
Jesse Brault
2026-03-05 12:41:05 -0600
-
cfff03e97d
Add add_strings.dm.
Jesse Brault
2026-03-05 10:55:00 -0600
-
713aec24ae
Fix hello.dm.
Jesse Brault
2026-03-04 22:16:40 -0600
-
19194271aa
Fmt all the old code.
Jesse Brault
2026-03-04 22:15:39 -0600
-
b4ebee0c34
Add result example as long-term goal.
Jesse Brault
2026-03-04 22:15:07 -0600
-
7d8df883e6
Fix identifier type info being called too early bug.
Jesse Brault
2026-03-04 22:05:53 -0600
-
d39e9afee2
More work on calling and returning.
Jesse Brault
2026-03-04 15:05:07 -0600
-
3cacde6a4c
Work on calling conventions and instructions.
Jesse Brault
2026-03-04 12:13:05 -0600
-
e1afb6b43b
Much work on adding and calling.
Jesse Brault
2026-03-03 21:06:12 -0600
-
81ceeeadb8
Add parameter-list to regular fns.
Jesse Brault
2026-03-03 12:31:52 -0600
-
61d7c66e17
Found some unused imports.
Jesse Brault
2026-03-02 21:16:41 -0600
-
db675b5601
Write README.md.
Jesse Brault
2026-03-02 21:16:18 -0600
-
8c1d56dc1a
Remove ir structs and fix misc. warnings.
Jesse Brault
2026-03-02 20:15:36 -0600
-
68cb200494
One small todo.
Jesse Brault
2026-03-02 20:01:29 -0600
-
0a0065a2c1
Add rudimentary type-use parsing and type-checking parameters.
Jesse Brault
2026-03-02 20:00:16 -0600
-
2d601d6115
Add Any type.
Jesse Brault
2026-03-02 19:45:46 -0600