• Joined on 2022-09-21
dane pushed to master at dane/scm-to-vm 2026-01-27 14:48:42 -06:00
01721cc9c2 update compiliation steps to use the letrecs (fix combinators)
dane pushed to master at dane/scm-to-vm 2026-01-27 11:00:23 -06:00
67d7cd8e3e Desugaring combines adjacent top-level defines into one letrec
dane pushed to master at dane/scm-to-vm 2026-01-26 10:29:29 -06:00
bb23fe5c58 Unique rename strategy for cps
dane pushed to master at dane/scm-to-vm 2026-01-25 20:58:27 -06:00
acc8054505 Added quotes and added an interpreter for scheme on the ir
dane pushed to master at dane/scm-to-vm 2026-01-23 13:03:38 -06:00
735d731bb6 Letrecs now working properly, no use before definitions
dane pushed to master at dane/scm-to-vm 2026-01-23 09:13:30 -06:00
05fd5f5db2 Struggling here a bit, removing env from cps until scope issues are fixed
dane pushed to master at dane/scm-to-vm 2026-01-20 11:56:31 -06:00
f9d30db271 Environment records for cps conversion, uniq identifiers avoid shadowing, desugar removes all defines
dane pushed to master at dane/scm-to-vm 2026-01-14 13:44:41 -06:00
244cd5e967 Prefer letrec to define-then!, basically the same thing but one is real. Need to redo denotation
dane pushed to master at dane/scm-to-vm 2026-01-09 22:30:50 -06:00
37bacda095 More WIP compiler stuff, generating combinators, possibly correct?
dane pushed to master at dane/lisp-in-small-pieces 2026-01-05 12:13:57 -06:00
e379db4e0c some cleanup, fix sequences
dane pushed to master at dane/lisp-in-small-pieces 2026-01-05 11:25:17 -06:00
4a98a45a8f mostly working bytecode interpreter
dane pushed to master at dane/lisp-in-small-pieces 2025-12-14 10:37:43 -06:00
14e091f45a Utilize a library function to find list indices
dane pushed to master at dane/scm-to-vm 2025-12-10 10:18:42 -06:00
e2f4e3d746 Cleaner cps interface
dane pushed to master at dane/scm-to-vm 2025-12-09 13:29:18 -06:00
3ad9159969 Arbitrary stack access. What to do with tail calls?
dane pushed to master at dane/scm-to-vm 2025-11-26 15:29:30 -06:00
69b6ccbce0 Cps conversion for full programs?
dane pushed to master at dane/scm-to-vm 2025-11-26 13:30:55 -06:00
7eb1ede3d9 Choose CPS over ANF due to body of literature on topic
dane pushed to master at dane/scm-to-vm 2025-11-25 17:47:43 -06:00
b5d3438e79 Remove failing tests, remove implemented code generator
dane pushed to master at dane/lisp-in-small-pieces 2025-11-25 14:09:02 -06:00
0675018adb Unoptimized bytecode interpreter (again without call/cc or apply)
c7e47d6bf8 I could twiddle like this forever, one last change before compiler
Compare 2 commits »
dane pushed to master at dane/lisp-in-small-pieces 2025-11-22 20:40:51 -06:00
0fa5814710 Move the combinators together
dane pushed to master at dane/lisp-in-small-pieces 2025-11-22 20:22:54 -06:00
9df556d2ac Update other combinators to match book