Commit Graph

46 Commits

Author SHA1 Message Date
Scott Richmond
8e8c457ce6 panic on wrong number of args to functions 2025-06-18 16:47:53 -04:00
Scott Richmond
73d94101d7 first draft of complex string matching, discover jump mistake 2025-06-05 23:26:42 -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
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
aaa9ab2e98 start pulling base fns into bytecode interpreter 2025-06-03 18:54:33 -04:00
Scott Richmond
1b462ce8ce keywords and interned strings use &'static str instead of indexes into vecs 2025-06-03 16:23:37 -04:00
Scott Richmond
663435e223 add string interpolation 2025-05-30 11:44:32 -04:00
Scott Richmond
e2617de4e9 or and and are now reserved words 2025-05-28 16:37:25 -04:00
Scott Richmond
efefa77b6e return register now an 8-member array 2025-05-26 09:16:47 -04: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
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
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
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
b85df7a83c process now uses spans, for to give panic locations 2024-12-11 18:58:59 -05:00
Scott Richmond
ca0c4062c3 get closing working? 2024-12-11 16:43:13 -05:00
Scott Richmond
c40f0f45d2 move patterns, clauses into AST 2024-12-10 22:26:52 -05:00
Scott Richmond
7a800c7905 all the work trying to write a validator 2024-12-10 16:44:52 -05:00
Scott Richmond
1a620c3682 finish fighting with lifetimes: string pattern matching works! 2024-12-07 23:56:19 -05:00
Scott Richmond
a739dfd794 keep adding to base, pull type function from value to base 2024-12-06 13:21:25 -05:00
Scott Richmond
04a09c5ccc add some functions, base fns return values, not results 2024-12-04 20:19:41 -05:00
Scott Richmond
1e18da7bd1 ensure inlined and allocated strings are equal 2024-12-04 19:13:25 -05:00
Scott Richmond
d3e026733a complete string interpolation 2024-12-04 19:07:03 -05:00
Scott Richmond
da60fed78d add ref-counted string type 2024-12-04 15:03:09 -05:00
Scott Richmond
b645c7daa6 get right with clippy 2024-11-21 20:00:49 -05:00
Scott Richmond
eb3b4d487b start looking into memory layout 2024-11-21 18:50:13 -05:00
Scott Richmond
fa0a793458 clean up most warnings 2024-11-21 17:10:50 -05:00
Scott Richmond
b7398a290a interpret loop & recur 2024-11-21 17:02:54 -05:00
Scott Richmond
1c589dcc4a parse loop and recur 2024-11-21 16:57:52 -05:00
Scott Richmond
f2ce24febc get base functions working 2024-11-14 21:30:42 -05:00
Scott Richmond
ef7b5ca9ac lots of work, need to fix cloning closures in base 2024-11-11 17:50:58 -05:00
Scott Richmond
691c333e09 lots of new things! almost a language 2024-11-10 20:12:19 -05:00
Scott Richmond
c9eb23770a futz, but mostly take notes 2024-11-09 14:10:08 -05:00
Scott Richmond
ba1640cc3f actually remove catchall pattern in eval 2024-11-07 20:41:38 -05:00
Scott Richmond
cdc72b2f37 keep working on vm 2024-11-06 17:37:57 -05:00
Scott Richmond
8f2737400b grind on lifetimes, don't get it working 2024-10-31 23:53:48 -04:00
Scott Richmond
a0b20ad19d break out into separate modules 2024-10-31 16:59:26 -04:00