Commit Graph

49 Commits

Author SHA1 Message Date
Scott Richmond
182b14e5f4 add builtins, fix basic synthetic expressions 2025-05-27 14:15:12 -04:00
Scott Richmond
74cc0025d6 first draft loop/recur, seems to work? 2025-05-26 11:03:37 -04:00
Scott Richmond
db7eb5965d return register now an 8-member array 2025-05-26 09:16:47 -04:00
Scott Richmond
04c96c9edb dict patterns prolly work? one-level nested patterns work 2025-05-25 19:14:34 -04:00
Scott Richmond
45d2e7e742 rough, not yet working, draft of dict patterns 2025-05-25 19:09:21 -04:00
Scott Richmond
cf51822128 add list patterns, fix dict stack mechanics 2025-05-25 16:30:20 -04:00
Scott Richmond
1ef0da5dd1 compiler: decouple stack & bindings resetting 2025-05-23 13:42:29 -04:00
Scott Richmond
4a4b2b22ed oh god, so many changes. working on tuple matching 2025-05-23 00:09:35 -04:00
Scott Richmond
a7ee8f8e57 vm::run is now a loop, not vm::interpret as a tailcall 2024-12-27 00:47:22 -05:00
Scott Richmond
8908630a21 add match_depth to vm 2024-12-27 00:22:01 -05:00
Scott Richmond
cfe0b83192 fix block compilation; compile & run repeat 2024-12-26 23:33:57 -05:00
Scott Richmond
9f4e630544 get lifetime out of Chunk, thus out of Value 2024-12-22 19:51:02 -05:00
Scott Richmond
be23ee6c44 get simple match forms done 2024-12-22 19:33:59 -05:00
Scott Richmond
d943185db8 do lots of work 2024-12-22 19:07:42 -05:00
Scott Richmond
d4342b0623 get binding & pretty debugging working 2024-12-18 01:28:23 -05:00
Scott Richmond
48754f92a4 do work 2024-12-17 23:45:39 -05:00
Scott Richmond
096d8d00bc add untracked from opening bytecode branch 2024-12-15 23:50:12 -05:00
Scott Richmond
eff2ed90d5 some simple bytecodes! 2024-12-15 17:54:40 -05:00
Scott Richmond
383f21fbd8 many refactorings; unfucked lifetimes? 2024-12-08 23:33:02 -05:00
Scott Richmond
525ca2c8cb type alias for Context 2024-12-08 00:02:01 -05:00
Scott Richmond
6ba05f31e6 finish fighting with lifetimes: string pattern matching works! 2024-12-07 23:56:19 -05:00
Scott Richmond
5a64c6623c fighting with lifetimes 2024-12-07 22:29:10 -05:00
Scott Richmond
13c14fd38f finish base, I think 2024-12-06 14:08:34 -05:00
Scott Richmond
5e10a87cbc keep adding to base, pull type function from value to base 2024-12-06 13:21:25 -05:00
Scott Richmond
96906fdb9f tick some boxes 2024-12-05 14:02:41 -05:00
Scott Richmond
af14eaee72 add some functions, base fns return values, not results 2024-12-04 20:19:41 -05:00
Scott Richmond
c9038fd8fb complete string interpolation 2024-12-04 19:07:03 -05:00
Scott Richmond
c5c1717e57 add ref-counted string type 2024-12-04 15:03:09 -05:00
Scott Richmond
ad76f41b52 parse docstrings 2024-11-21 22:36:57 -05:00
Scott Richmond
72846ccd5c follow clippy 2024-11-21 19:54:50 -05:00
Scott Richmond
0cd170bd83 clean up most warnings 2024-11-21 17:10:50 -05:00
Scott Richmond
423f43b7fd parse loop and recur 2024-11-21 16:57:52 -05:00
Scott Richmond
dbff31be40 parse loop and recur 2024-11-21 16:41:46 -05:00
Scott Richmond
56e6712154 add guard clauses to match and fn 2024-11-20 20:10:17 -05:00
Scott Richmond
7a4bf5ff29 list splatterns! 2024-11-18 20:01:27 -05:00
Scott Richmond
0acad8b312 tuple splatterns now work 2024-11-18 13:25:54 -05:00
Scott Richmond
938033ab5d add as patterns 2024-11-14 21:55:19 -05:00
Scott Richmond
10bc2e9b0c get base functions working 2024-11-14 21:30:42 -05:00
Scott Richmond
26ff15cae8 lots of work, need to fix cloning closures in base 2024-11-11 17:50:58 -05:00
Scott Richmond
9f0cef5207 lots of new things! almost a language 2024-11-10 20:12:19 -05:00
Scott Richmond
bb683b09b4 futz, but mostly take notes 2024-11-09 14:10:08 -05:00
Scott Richmond
32ab5f7944 actually remove catchall pattern in eval 2024-11-07 20:41:38 -05:00
Scott Richmond
fd55604608 actually remove catchall pattern in eval 2024-11-07 19:05:24 -05:00
Scott Richmond
7819472048 remove catchall pattern in eval 2024-11-07 19:04:58 -05:00
Scott Richmond
28d1c7ab0c keep working on some things 2024-11-07 18:57:01 -05:00
Scott Richmond
0875ec2ab5 get the vm basically working! 2024-11-06 18:28:29 -05:00
Scott Richmond
740b14f9da keep working on vm 2024-11-06 17:37:57 -05:00
Scott Richmond
b77866baf9 grind on lifetimes, don't get it working 2024-10-31 23:53:48 -04:00
Scott Richmond
60f0a1081d break out into separate modules 2024-10-31 16:59:26 -04:00