Jesse Brault jessebrault
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-11 20:06:12 +00:00
89f519c45f Refactor scopes and symbol table for more resiliency and classes/fields.
9790ec6ca6 Remove module_level_declaration ast node.
Compare 2 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-11 02:20:50 +00:00
80b6b96aeb Implement lexing and parsing for classes.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-10 22:35:27 +00:00
9df9edc508 Add doubles.
7de866cf9d Add return-type checking and fix string literal type-info bug.
Compare 2 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-10 02:11:44 +00:00
705436ba61 Add repl subcommand with expressions only.
b88b230495 Make run subcommand.
Compare 2 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-10 00:22:54 +00:00
ebca87ddb9 A lot of work just to do subtraction.
e35bacb583 Bunch of AST refactoring to make api easier.
9d09f7481b Add unary minus and subtraction to lexer/parser/ast node kinds.
Compare 3 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-09 01:33:55 +00:00
e486b212ae Sketching dvm object.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-08 21:30:32 +00:00
ec848b3d36 Add e2e-tests project and add register saving around calls.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-08 18:35:28 +00:00
a7d162b2ca Add backlog.
ec7bf650b2 Add return mechanism to dvm code, and related fixes to dmc.
2e33936842 Complete forgotten todo.
12174c9cf6 Add stack offset propagation, clean up some deprecated things.
12c4d0eb83 End-to-end with register allocation.
Compare 5 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-08 00:25:27 +00:00
1171ce75f9 Propagate register assignments.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-07 23:54:31 +00:00
d8bd826cb0 Fix parse mistake.
4479fcb1ba Refactor register allocation code to separate module.
5d565ccf91 Fix register allocation algorithm.
Compare 3 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-06 05:19:16 +00:00
8e9ae9ed98 Implement register allocation algorithm, with a few bugs.
272d288213 Implement block/statement interference graph algorithm.
c91bb35d8d Giving more info to ir.
15089a15d2 Re-introduce ir with goal of doing register allocation.
cfff03e97d Add add_strings.dm.
Compare 5 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-05 04:18:07 +00:00
713aec24ae Fix hello.dm.
19194271aa Fmt all the old code.
b4ebee0c34 Add result example as long-term goal.
Compare 3 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-05 04:06:08 +00:00
7d8df883e6 Fix identifier type info being called too early bug.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-04 21:09:23 +00:00
d39e9afee2 More work on calling and returning.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-04 18:13:35 +00:00
3cacde6a4c Work on calling conventions and instructions.
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-04 03:06:41 +00:00
e1afb6b43b Much work on adding and calling.
81ceeeadb8 Add parameter-list to regular fns.
Compare 2 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-03-03 03:16:56 +00:00
61d7c66e17 Found some unused imports.
db675b5601 Write README.md.
8c1d56dc1a Remove ir structs and fix misc. warnings.
68cb200494 One small todo.
0a0065a2c1 Add rudimentary type-use parsing and type-checking parameters.
Compare 16 commits »
jessebrault pushed to main at jessebrault/deimos-lang 2026-02-28 03:33:48 +00:00
6b855b8ebb Work on asm.
jessebrault pushed to main at jessebrault/deimos-lang 2026-02-27 22:27:36 +00:00
aefac57b9d Starting work on IR.
jessebrault pushed to main at jessebrault/deimos-lang 2026-02-27 20:27:30 +00:00
8df46eec8d Moving to dmc-lib, keeping it smaller!