Commit Graph

169 Commits

Author SHA1 Message Date
Scott Richmond
a87fa6bd3f old->new prelude 2025-07-06 23:14:01 -04:00
Scott Richmond
ffd1aa7127 wire up keyboard events 2025-07-06 01:40:03 -04:00
Scott Richmond
7c360fe3d2 working on panics 2025-07-04 01:23:16 -04:00
Scott Richmond
f1a4a31aa5 use serde to serialize the things 2025-07-03 20:22:11 -04:00
Scott Richmond
8eae684b85 string keys on dicts now fully work 2025-07-03 15:30:51 -04:00
Scott Richmond
0eb1a9826c integration work continues 2025-06-30 18:59:59 -04:00
Scott Richmond
30a68eedc7 stub out first pass of io system 2025-06-30 12:48:50 -04:00
Scott Richmond
53a83f2bef maybe figure out the wasm thing? 2025-06-25 22:56:39 -04:00
Scott Richmond
f19fd2b12d things and stuff 2025-06-25 17:43:30 -04:00
Scott Richmond
ab29109b41 run is now String -> String, outputting a json result 2025-06-25 15:41:30 -04:00
Scott Richmond
8fa176e300 so turtle graphics appears to work? 2025-06-24 15:58:14 -04:00
Scott Richmond
2f1400393f so many things: DRY out VM, fix repeat tail calls, etc. 2025-06-24 15:50:02 -04:00
Scott Richmond
64c4e9cb4a update (fix?) partial function application stack discipline 2025-06-23 21:22:28 -04:00
Scott Richmond
78e5653d85 fix upvalue resolution, hopefully for real this time 2025-06-23 19:17:53 -04:00
Scott Richmond
c836278dcc moar debugging: find issues with upvalues 2025-06-23 18:59:12 -04:00
Scott Richmond
77a25ba0f2 fix repeat stack discipline 2025-06-23 17:37:46 -04:00
Scott Richmond
8fd880f749 fix dict pattern stack discipline 2025-06-23 17:33:45 -04:00
Scott Richmond
9cb36f5189 add turtle graphics, fix jump len error in tuple pattern 2025-06-22 23:57:11 -04:00
Scott Richmond
1d2ea4ae38 keep adding prelude; fix when stack discipline 2025-06-22 22:46:07 -04:00
Scott Richmond
56a9947b76 fix and & or 2025-06-22 20:26:38 -04:00
Scott Richmond
86df1834e3 fix and & or 2025-06-22 20:26:08 -04:00
Scott Richmond
17ff00f570 keep grinding; quality of life improvements to aid in grinding 2025-06-22 17:03:50 -04:00
Scott Richmond
141e86781e improve bytecode readability by reporting patterns 2025-06-22 14:39:52 -04:00
Scott Richmond
4548be12ad improve bytecode readability by reporting patterns 2025-06-22 14:38:29 -04:00
Scott Richmond
d762458bb3 keep grinding on loop/recur/jif stack mismatch; add ast->code printer 2025-06-22 14:04:43 -04:00
Scott Richmond
3ac08a1991 lots of bugs fixed--upvalues, bindings, stack manipulations, tail calls, etc. 2025-06-21 22:25:08 -04:00
Scott Richmond
16fed32000 fix one-up closure resolution 2025-06-21 18:33:14 -04:00
Scott Richmond
5a0a6453ab start work on getting prelude working; discover closure bug 2025-06-21 17:43:47 -04:00
Scott Richmond
cd79c94938 fix if alternative unconditional jump len 2025-06-20 17:09:41 -04:00
Scott Richmond
3107891b65 prelude compiles: WAT 2025-06-20 16:02:48 -04:00
Scott Richmond
ac06504979 constants need 16 bits 2025-06-20 15:56:13 -04:00
Scott Richmond
df0a8e5b91 fix function scoping bug 2025-06-20 15:35:09 -04:00
Scott Richmond
a275757eac wire up stub:w prelude from external file 2025-06-20 14:43:14 -04:00
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
430e29a608 fix upvalue resolution, start work on TCO 2025-06-19 20:29:15 -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
7d900b5bc6 add match splatted list opcode 2025-06-19 11:54:26 -04:00