-
c497b90a16
implement multiterm synthetic expressions
Scott Richmond
2025-06-03 19:13:40 -0400
-
fc245348b4
start pulling base fns into bytecode interpreter
Scott Richmond
2025-06-03 18:54:33 -0400
-
615fef6ebc
function calls: first draft, worked out the obvious bugs
Scott Richmond
2025-06-03 17:30:00 -0400
-
86992078e9
keywords and interned strings use &'static str instead of indexes into vecs
Scott Richmond
2025-06-03 16:23:37 -0400
-
681176282c
basic function calls, still with bugs!
Scott Richmond
2025-06-03 15:48:13 -0400
-
22d1ceb3e8
vm.chunk -> vm.callframe.chunk
Scott Richmond
2025-06-02 13:34:23 -0400
-
de3d7e834c
maybe properly compile functions? need to start work on fn calls to test
Scott Richmond
2025-06-01 20:01:42 -0400
-
b6f9b35b4c
start major work on function compilation
Scott Richmond
2025-05-30 17:02:55 -0400
-
34ab24c4c9
add as patterns
Scott Richmond
2025-05-30 14:57:51 -0400
-
cda217f6ef
add string interpolation
Scott Richmond
2025-05-30 11:44:32 -0400
-
82ac6744ca
or
and and
are now reserved words
Scott Richmond
2025-05-28 16:37:25 -0400
-
182b14e5f4
add builtins, fix basic synthetic expressions
Scott Richmond
2025-05-27 14:15:12 -0400
-
74cc0025d6
first draft loop/recur, seems to work?
Scott Richmond
2025-05-26 11:03:37 -0400
-
db7eb5965d
return register now an 8-member array
Scott Richmond
2025-05-26 09:16:47 -0400
-
1e1593298d
update repeat
Scott Richmond
2025-05-26 08:32:33 -0400
-
04c96c9edb
dict patterns prolly work? one-level nested patterns work
Scott Richmond
2025-05-25 19:14:34 -0400
-
45d2e7e742
rough, not yet working, draft of dict patterns
Scott Richmond
2025-05-25 19:09:21 -0400
-
cf51822128
add list patterns, fix dict stack mechanics
Scott Richmond
2025-05-25 16:30:20 -0400
-
4f7ba56d1f
properly compile when expressions?
Scott Richmond
2025-05-23 17:59:09 -0400
-
ce1612a30c
compiler: decouple stack & bindings resetting
Scott Richmond
2025-05-23 13:43:35 -0400
-
1ef0da5dd1
compiler: decouple stack & bindings resetting
Scott Richmond
2025-05-23 13:42:29 -0400
-
4a4b2b22ed
oh god, so many changes. working on tuple matching
Scott Richmond
2025-05-23 00:09:35 -0400
-
6c803cdf5a
take some loop notes
Scott Richmond
2024-12-27 00:54:31 -0500
-
a7ee8f8e57
vm::run is now a loop, not vm::interpret as a tailcall
Scott Richmond
2024-12-27 00:47:22 -0500
-
8908630a21
add match_depth to vm
Scott Richmond
2024-12-27 00:22:01 -0500
-
6f582bff06
refactor if/else to match in guard compilation
Scott Richmond
2024-12-26 23:48:38 -0500
-
f5965fdb44
compile guards in match forms
Scott Richmond
2024-12-26 23:46:06 -0500
-
cfe0b83192
fix block compilation; compile & run repeat
Scott Richmond
2024-12-26 23:33:57 -0500
-
4fa2ce5e78
separate compiler & chunk
Scott Richmond
2024-12-26 19:03:09 -0500
-
40d4f48878
notes and comments
Scott Richmond
2024-12-26 18:41:54 -0500
-
ef0ac40dbe
working & thinking
Scott Richmond
2024-12-24 12:35:44 -0500
-
8a9170b002
work on functions, discover recursion problems
main
Scott Richmond
2024-12-23 22:04:25 -0500
-
a4f12c8f7d
continue work on compiling functions
Scott Richmond
2024-12-23 10:55:28 -0500
-
9f4e630544
get lifetime out of Chunk, thus out of Value
Scott Richmond
2024-12-22 19:51:02 -0500
-
be23ee6c44
get simple match forms done
Scott Richmond
2024-12-22 19:33:59 -0500
-
d943185db8
do lots of work
Scott Richmond
2024-12-22 19:07:42 -0500
-
d4342b0623
get binding & pretty debugging working
Scott Richmond
2024-12-18 01:28:23 -0500
-
48754f92a4
do work
Scott Richmond
2024-12-17 23:45:39 -0500
-
096d8d00bc
add untracked from opening bytecode branch
Scott Richmond
2024-12-15 23:50:12 -0500
-
9c3205d4c1
DRY out validator, simplify code
Scott Richmond
2024-12-15 23:49:43 -0500
-
6c78cffe56
finish list of valid types
Scott Richmond
2024-12-15 23:49:27 -0500
-
35fc591c76
make some progress: atoms and ifs
Scott Richmond
2024-12-15 23:28:57 -0500
-
eff2ed90d5
some simple bytecodes!
Scott Richmond
2024-12-15 17:54:40 -0500
-
86aea78c21
start working on a bytecode interpreter!
Scott Richmond
2024-12-15 16:37:51 -0500
-
-
d4af160f80
things & stuff
Scott Richmond
2024-12-14 13:43:08 -0500
-
8535225167
fix print!
Scott Richmond
2024-12-13 13:47:03 -0500
-
73e60b8ced
bring full prelude into Ludus.
Scott Richmond
2024-12-12 19:43:56 -0500
-
49a0b0f8a7
fix loop validation bugs
Scott Richmond
2024-12-12 19:28:55 -0500
-
ac4bd0fb55
improve panic reports
Scott Richmond
2024-12-12 19:01:51 -0500
-
273267f61d
a slow and brute-force approach to the problem of re-binding closed-over forward declarations
Scott Richmond
2024-12-12 01:19:39 -0500
-
5e73c5cb3b
ariadne hooked up to panic messages
Scott Richmond
2024-12-12 00:31:57 -0500
-
b2e08fe207
fiddle
Scott Richmond
2024-12-11 19:13:06 -0500
-
229470fee3
refactor process to use
visit
method everywhere
Scott Richmond
2024-12-11 19:11:40 -0500
-
ecc7b26b66
process now uses spans, for to give panic locations
Scott Richmond
2024-12-11 18:58:59 -0500
-
5f154fe56f
stash changes before ripping up a bunch of stuff
Scott Richmond
2024-12-11 17:37:42 -0500
-
7431cbf380
start debugging full prelude
Scott Richmond
2024-12-11 17:32:31 -0500
-
6a01089973
closing works, so does importing from Prelude!
Scott Richmond
2024-12-11 17:22:37 -0500
-
567d3da4be
get closing working?
Scott Richmond
2024-12-11 16:43:13 -0500
-
65492d0810
follow clippy
Scott Richmond
2024-12-11 15:48:24 -0500
-
5b41365caa
add args to processes
Scott Richmond
2024-12-11 15:45:34 -0500
-
f4fbae10e6
context -> process
Scott Richmond
2024-12-11 15:42:50 -0500
-
36c5d125fb
validator validates recursive functions
Scott Richmond
2024-12-11 15:36:23 -0500
-
35e9d0373d
arity checking--of local functions
Scott Richmond
2024-12-11 00:20:34 -0500
-
eafe7a7fa9
complete first draft of validator
Scott Richmond
2024-12-10 23:42:05 -0500
-
9542dcf5e2
cover all Ast branches
Scott Richmond
2024-12-10 22:40:57 -0500
-
f5a6facb1c
move patterns, clauses into AST
Scott Richmond
2024-12-10 22:26:52 -0500
-
cab1b3f173
start moving Patterns into Ast
Scott Richmond
2024-12-10 18:40:43 -0500
-
dde9ac4bff
loop arity checking
Scott Richmond
2024-12-10 18:07:31 -0500
-
e9b52e1488
improve do & recur errs
Scott Richmond
2024-12-10 17:39:02 -0500
-
4c9659271b
first draft of synthetic validation
Scott Richmond
2024-12-10 17:23:15 -0500
-
ec38bcdc8c
start testing, fixing
Scott Richmond
2024-12-10 17:14:26 -0500
-
d48a787447
all the work trying to write a validator
Scott Richmond
2024-12-10 16:44:52 -0500
-
9a4f247a21
bring in prelude
Scott Richmond
2024-12-08 23:34:05 -0500
-
f063d55404
actually commit the big new file
Scott Richmond
2024-12-08 23:33:46 -0500
-
383f21fbd8
many refactorings; unfucked lifetimes?
Scott Richmond
2024-12-08 23:33:02 -0500
-
525ca2c8cb
type alias for Context
Scott Richmond
2024-12-08 00:02:01 -0500
-
6ba05f31e6
finish fighting with lifetimes: string pattern matching works!
Scott Richmond
2024-12-07 23:56:19 -0500
-
5a64c6623c
fighting with lifetimes
Scott Richmond
2024-12-07 22:29:10 -0500
-
2a26316b50
parse string patterns, perhaps correctly, perhaps not
Scott Richmond
2024-12-07 18:26:25 -0500
-
13c14fd38f
finish base, I think
Scott Richmond
2024-12-06 14:08:34 -0500
-
5e10a87cbc
keep adding to base, pull type function from value to base
Scott Richmond
2024-12-06 13:21:25 -0500
-
96906fdb9f
tick some boxes
Scott Richmond
2024-12-05 14:02:41 -0500
-
ad6fcccc79
add concat
Scott Richmond
2024-12-05 11:51:42 -0500
-
af14eaee72
add some functions, base fns return values, not results
Scott Richmond
2024-12-04 20:19:41 -0500
-
c3408a56c1
ensure inlined and allocated strings are equal
Scott Richmond
2024-12-04 19:13:25 -0500
-
c9038fd8fb
complete string interpolation
Scott Richmond
2024-12-04 19:07:03 -0500
-
b6c4c6375b
parse interpolated strings
Scott Richmond
2024-12-04 18:31:13 -0500
-
62671094a0
parse interpolated strings
Scott Richmond
2024-12-04 18:30:03 -0500
-
c5c1717e57
add ref-counted string type
Scott Richmond
2024-12-04 15:03:09 -0500
-
2a83dbb96c
moar thoughts
Scott Richmond
2024-11-22 00:07:52 -0500
-
5a084e8122
write a few thoughts
Scott Richmond
2024-11-21 23:52:27 -0500
-
ad76f41b52
parse docstrings
Scott Richmond
2024-11-21 22:36:57 -0500
-
a35d5293a9
update todos
Scott Richmond
2024-11-21 20:09:37 -0500
-
b8f040c6ce
get right with clippy
Scott Richmond
2024-11-21 20:00:49 -0500
-
72846ccd5c
follow clippy
Scott Richmond
2024-11-21 19:54:50 -0500
-
e4954678f0
start looking into memory layout
Scott Richmond
2024-11-21 18:50:13 -0500
-
0cd170bd83
clean up most warnings
Scott Richmond
2024-11-21 17:10:50 -0500
-
ad076622aa
interpret loop & recur
Scott Richmond
2024-11-21 17:02:54 -0500
-
423f43b7fd
parse loop and recur
Scott Richmond
2024-11-21 16:57:52 -0500
-
dbff31be40
parse loop and recur
Scott Richmond
2024-11-21 16:41:46 -0500