|
5948bfa973
|
First working implementation of closures
|
2024-08-22 17:21:05 +01:00 |
|
|
6fcd231694
|
Implement VM opcode for closure capture
|
2024-08-21 23:45:19 +01:00 |
|
|
edc0a89ed9
|
Implement closure compilation (no running yet)
|
2024-08-20 23:18:48 +01:00 |
|
|
fdf38c71bf
|
Read and compile full toplevel multiline program
|
2024-08-18 22:08:47 +01:00 |
|
|
7d88d483df
|
Fix callstack bug with returning to previous function
|
2024-08-18 12:56:54 +01:00 |
|
|
fce8b84276
|
Implement compiling lambda functions and function calls
|
2024-08-17 23:22:21 +01:00 |
|
|
9a0f6d2264
|
Initial implementation of lambda compilation
|
2024-08-17 12:33:45 +01:00 |
|
|
81eb5e43ce
|
Implement simple conditionals
|
2024-08-15 01:18:05 +01:00 |
|
|
3a117c9b1f
|
Enable execution of primitive arithmetic bytecode
|
2024-08-13 01:11:23 +01:00 |
|
|
040eb540b1
|
Implement reading and writing from stack
|
2024-08-12 23:05:40 +01:00 |
|
|
c63af0057f
|
Stop printing debug output from the compiler
|
2024-08-11 21:40:32 +01:00 |
|
|
f305901121
|
Return compiled function from the compile()
|
2024-08-11 21:37:37 +01:00 |
|
|
d3471ed1af
|
Make primitive arithmetic operations compile to bytecode
|
2024-08-11 19:25:37 +01:00 |
|
|
8a50f99340
|
Reduce number of opcodes required for addition
|
2024-08-11 12:37:00 +01:00 |
|
|
3cb4869ed5
|
First proper code generation for addition
|
2024-08-10 21:47:07 +01:00 |
|
|
a195b8d0e3
|
More const qualifiers added
|
2024-08-10 18:56:42 +01:00 |
|
|
f1fd15171c
|
Add const qualifiers where necessary
|
2024-08-10 18:46:20 +01:00 |
|
|
db6ff8deba
|
Add "Opcode" type
|
2024-08-10 18:24:16 +01:00 |
|
|
935c629460
|
Add error location reporting
|
2024-08-10 11:17:20 +01:00 |
|
|
4c7b44ff01
|
Stop passing arena explicitly
|
2024-08-09 23:45:06 +01:00 |
|
|
92f546107e
|
Add compiler context
|
2024-08-04 20:38:56 +01:00 |
|
|
a3724e1c78
|
Add dicts and super primitive test suite
|
2024-08-01 18:56:38 +01:00 |
|
|
42a5b7da2b
|
Add arrays and boilerplate for the compiler
|
2024-07-30 23:52:23 +01:00 |
|