Commit Graph

254 Commits

Author SHA1 Message Date
Scott Richmond
55361dd7c1 oh god, so many changes. working on tuple matching 2025-05-23 00:09:35 -04:00
Scott Richmond
2b39b1b54b take some loop notes 2024-12-27 00:54:31 -05:00
Scott Richmond
6cbe253f6e vm::run is now a loop, not vm::interpret as a tailcall 2024-12-27 00:47:22 -05:00
Scott Richmond
420415f984 add match_depth to vm 2024-12-27 00:22:01 -05:00
Scott Richmond
ce77b25ac7 refactor if/else to match in guard compilation 2024-12-26 23:48:38 -05:00
Scott Richmond
9ae2e8eca2 compile guards in match forms 2024-12-26 23:46:06 -05:00
Scott Richmond
0719e4a276 fix block compilation; compile & run repeat 2024-12-26 23:33:57 -05:00
Scott Richmond
774df695d9 separate compiler & chunk 2024-12-26 19:03:09 -05:00
Scott Richmond
e37b562c93 notes and comments 2024-12-26 18:41:54 -05:00
Scott Richmond
05abe64e45 working & thinking 2024-12-24 12:35:44 -05:00
Scott Richmond
d3df1e8ed2 continue work on compiling functions 2024-12-23 10:55:28 -05:00
Scott Richmond
5618cf9ef8 get lifetime out of Chunk, thus out of Value 2024-12-22 19:51:02 -05:00
Scott Richmond
e8a90c5356 get simple match forms done 2024-12-22 19:33:59 -05:00
Scott Richmond
068a8aa724 do lots of work 2024-12-22 19:07:42 -05:00
Scott Richmond
27443444e3 get binding & pretty debugging working 2024-12-18 01:28:23 -05:00
Scott Richmond
044c7264f8 do work 2024-12-17 23:45:39 -05:00
Scott Richmond
e61d07efa6 add untracked from opening bytecode branch 2024-12-15 23:50:12 -05:00
Scott Richmond
bbe38e6bf6 DRY out validator, simplify code 2024-12-15 23:49:43 -05:00
Scott Richmond
e13c5a5ba3 finish list of valid types 2024-12-15 23:49:27 -05:00
Scott Richmond
d0afa3a547 make some progress: atoms and ifs 2024-12-15 23:28:57 -05:00
Scott Richmond
2aa9892d25 some simple bytecodes! 2024-12-15 17:54:40 -05:00
Scott Richmond
3cddbac42c start working on a bytecode interpreter! 2024-12-15 16:37:51 -05:00
Scott Richmond
6388aae0fa things & stuff 2024-12-14 13:43:08 -05:00
Scott Richmond
70ecebcbe9 fix print! 2024-12-13 13:47:03 -05:00
Scott Richmond
0d741ee6fa bring full prelude into Ludus. 2024-12-12 19:43:56 -05:00
Scott Richmond
90493f4346 fix loop validation bugs 2024-12-12 19:28:55 -05:00
Scott Richmond
1e74ef8237 improve panic reports 2024-12-12 19:01:51 -05:00
Scott Richmond
78266114e7 a slow and brute-force approach to the problem of re-binding closed-over forward declarations 2024-12-12 01:19:39 -05:00
Scott Richmond
ac119a848c ariadne hooked up to panic messages 2024-12-12 00:31:57 -05:00
Scott Richmond
d28a7adbfa fiddle 2024-12-11 19:13:06 -05:00
Scott Richmond
c1a594a939 refactor process to use visit method everywhere 2024-12-11 19:11:40 -05:00
Scott Richmond
b85df7a83c process now uses spans, for to give panic locations 2024-12-11 18:58:59 -05:00
Scott Richmond
a248a56f6e stash changes before ripping up a bunch of stuff 2024-12-11 17:37:42 -05:00
Scott Richmond
ddff9b6884 start debugging full prelude 2024-12-11 17:32:31 -05:00
Scott Richmond
7dab0e0637 closing works, so does importing from Prelude! 2024-12-11 17:22:37 -05:00
Scott Richmond
ca0c4062c3 get closing working? 2024-12-11 16:43:13 -05:00
Scott Richmond
6f4b269bdb follow clippy 2024-12-11 15:48:24 -05:00
Scott Richmond
9410997886 add args to processes 2024-12-11 15:45:34 -05:00
Scott Richmond
3eb9178854 context -> process 2024-12-11 15:42:50 -05:00
Scott Richmond
4b783bc5ef validator validates recursive functions 2024-12-11 15:36:23 -05:00
Scott Richmond
acaf726675 arity checking--of local functions 2024-12-11 00:20:34 -05:00
Scott Richmond
2f8f3f687c complete first draft of validator 2024-12-10 23:42:05 -05:00
Scott Richmond
dd57f49f80 cover all Ast branches 2024-12-10 22:40:57 -05:00
Scott Richmond
c40f0f45d2 move patterns, clauses into AST 2024-12-10 22:26:52 -05:00
Scott Richmond
07096abc7d start moving Patterns into Ast 2024-12-10 18:40:43 -05:00
Scott Richmond
26f3b66b33 loop arity checking 2024-12-10 18:07:31 -05:00
Scott Richmond
1e88d803a3 improve do & recur errs 2024-12-10 17:39:02 -05:00
Scott Richmond
8016f9f0bd first draft of synthetic validation 2024-12-10 17:23:15 -05:00
Scott Richmond
c5ec437452 start testing, fixing 2024-12-10 17:14:26 -05:00
Scott Richmond
7a800c7905 all the work trying to write a validator 2024-12-10 16:44:52 -05:00