Scott Richmond
|
9c7a3f603f
|
base and stub prelude wired up
|
2025-06-20 14:30:39 -04:00 |
|
Scott Richmond
|
f244b97c4a
|
work on prelude; update tailcall to deal properly with base fns
|
2025-06-20 14:29:31 -04:00 |
|
Scott Richmond
|
518c194cc6
|
load base into a compiler
|
2025-06-20 12:53:16 -04:00 |
|
Scott Richmond
|
fac7d71732
|
fix argument order in base fns
|
2025-06-20 12:49:31 -04:00 |
|
Scott Richmond
|
062e7d5126
|
recursion works, so does mutual recursion; function call bugfixes
|
2025-06-20 12:32:15 -04:00 |
|
Scott Richmond
|
c3199fe716
|
notes and todos
|
2025-06-20 00:56:43 -04:00 |
|
Scott Richmond
|
50a3aa9a61
|
fix binding bug
|
2025-06-20 00:33:25 -04:00 |
|
Scott Richmond
|
bd36e21bd8
|
find a bug in function bindings; TCO is maybe complete?; things are in a shambles
|
2025-06-19 21:47:58 -04:00 |
|
Scott Richmond
|
838dc68d48
|
improve panic traces; tail calls work for simpel calls
|
2025-06-19 21:13:18 -04:00 |
|
Scott Richmond
|
1600311e47
|
tail calls work now? also print stack trace on panic
|
2025-06-19 20:52:19 -04:00 |
|
Scott Richmond
|
09e21eb7f8
|
Merge branch 'bytecode' of alea.ludus.dev:scott/rudus into bytecode
|
2025-06-19 20:29:41 -04:00 |
|
Scott Richmond
|
430e29a608
|
fix upvalue resolution, start work on TCO
|
2025-06-19 20:29:15 -04:00 |
|
Scott Richmond
|
13bd6a8836
|
fix upvalue resolution
|
2025-06-19 20:26:16 -04:00 |
|
Scott Richmond
|
fdb4713d98
|
rought draft of splatted fn args
|
2025-06-19 18:26:44 -04:00 |
|
Scott Richmond
|
66534a2429
|
dict splatterns first draft
|
2025-06-19 15:56:23 -04:00 |
|
Scott Richmond
|
bdce1a76ef
|
pseudocode splatted dict algo
|
2025-06-19 12:44:29 -04:00 |
|
Scott Richmond
|
2b92046c4a
|
first draft of tuple splatterns
|
2025-06-19 12:37:29 -04:00 |
|
Scott Richmond
|
e44cf56860
|
first draft of list splatterns
|
2025-06-19 12:18:09 -04:00 |
|
Scott Richmond
|
3c8e7c10d5
|
first stab at splatted lists
|
2025-06-19 12:06:47 -04:00 |
|
Scott Richmond
|
7d900b5bc6
|
add match splatted list opcode
|
2025-06-19 11:54:26 -04:00 |
|
Scott Richmond
|
0de01e3e17
|
update punch list
|
2025-06-19 11:48:50 -04:00 |
|
Scott Richmond
|
c2e9e018b4
|
rough draft of new version of loop w/ 16 bit jumps
|
2025-06-18 19:03:45 -04:00 |
|
Scott Richmond
|
97157813b1
|
update repeat w/ new jumps
|
2025-06-18 17:50:30 -04:00 |
|
Scott Richmond
|
8e8c457ce6
|
panic on wrong number of args to functions
|
2025-06-18 16:47:53 -04:00 |
|
Scott Richmond
|
81730af988
|
match now uses new jump; micro-optimize pop_n
|
2025-06-18 15:24:30 -04:00 |
|
Scott Richmond
|
4ec35b6dc9
|
update dict pattern for new jumps
|
2025-06-18 15:00:46 -04:00 |
|
Scott Richmond
|
95acb3361a
|
update list pattern compiling to reflect new jump logic
|
2025-06-18 14:52:15 -04:00 |
|
Scott Richmond
|
f129eca045
|
tuple patterns now use jump_stub and patch_jump, with 16 bit jump values
|
2025-06-18 14:47:00 -04:00 |
|
Scott Richmond
|
9e3c71fcb2
|
chip away at 16-bit jump instructions
|
2025-06-18 14:12:54 -04:00 |
|
Scott Richmond
|
36033de22f
|
VM instructions now take 3 bytes
|
2025-06-18 14:12:10 -04:00 |
|
Scott Richmond
|
8c865c87c0
|
add jump fn for 16 bit jump
|
2025-06-18 13:15:57 -04:00 |
|
Scott Richmond
|
2a45348d74
|
remove unused pattern.rs
|
2025-06-18 13:15:39 -04:00 |
|
Scott Richmond
|
fe3c95987d
|
update thoughts
|
2025-06-10 15:44:47 -04:00 |
|
Scott Richmond
|
2aad460f28
|
test out 16 bit operand math
|
2025-06-06 00:11:08 -04:00 |
|
Scott Richmond
|
bc29caf0b2
|
oops: put working document under version control
|
2025-06-06 00:06:23 -04:00 |
|
Scott Richmond
|
73d94101d7
|
first draft of complex string matching, discover jump mistake
|
2025-06-05 23:26:42 -04:00 |
|
Scott Richmond
|
55ca86b6a3
|
fix InterpolatedPattern compilation
|
2025-06-05 21:23:08 -04:00 |
|
Scott Richmond
|
d330fc3046
|
first draft of partial application, is working in easy cases
|
2025-06-05 16:45:23 -04:00 |
|
Scott Richmond
|
d4bda075d8
|
start work on partial application, fix/abstract binding resolution
|
2025-06-05 16:10:40 -04:00 |
|
Scott Richmond
|
0b0e869d85
|
add dict splats
|
2025-06-05 13:24:32 -04:00 |
|
Scott Richmond
|
8d3e817b6e
|
add list splats
|
2025-06-05 13:05:07 -04:00 |
|
Scott Richmond
|
41a54523c3
|
add do forms
|
2025-06-05 12:15:49 -04:00 |
|
Scott Richmond
|
a0e184dee7
|
fix extra pop regression
|
2025-06-05 12:04:02 -04:00 |
|
Scott Richmond
|
32f7a036cd
|
save work, working on function clause guards, extra pop instructions are showing up after function definitions
|
2025-06-04 19:02:19 -04:00 |
|
Scott Richmond
|
1e295cb483
|
guards work in match forms
|
2025-06-04 18:55:40 -04:00 |
|
Scott Richmond
|
e32f4a0226
|
guards work in match forms
|
2025-06-04 18:51:07 -04:00 |
|
Scott Richmond
|
5660d62aff
|
let as last expr in block now returns rhs; clean up some comment cruft
|
2025-06-04 18:27:17 -04:00 |
|
Scott Richmond
|
8909f7350b
|
closures work?!
|
2025-06-04 17:53:38 -04:00 |
|
Scott Richmond
|
911702f4bf
|
add a print builtin/opcode
|
2025-06-03 19:26:01 -04:00 |
|
Scott Richmond
|
3f48d2e49f
|
implement multiterm synthetic expressions
|
2025-06-03 19:13:40 -04:00 |
|