Commit Graph

12 Commits

Author SHA1 Message Date
8f75efd4fb Added desugar phase for converting cond into a chain of if's 2025-12-27 17:00:16 +03:00
cd8337b650 Added gensym, and phases in the desugar module for logical and & or 2025-12-27 16:41:22 +03:00
be85a9a6ed Added desugar steps to add (begin) wrappers around long lambda bodies, and rewrite internal (define) forms into letrec forms 2025-12-26 22:13:30 +03:00
d84d81e824 Started work on the compiler, with a desugar phase 2025-12-26 20:42:03 +03:00
fb47e6ecdd Complete reorganization: finally at a building state again 2025-12-08 22:25:58 +03:00
3f0a860a03 Reorganized basically everything, making way for the compiler 2025-11-15 13:06:16 +03:00
27115ab4f2 Added pretty-printing. 2025-11-12 23:32:54 +03:00
c69962959f Reorganized the standard library a little more, moved the initialization code for the standard environment into a function. Making way for more organization changes to come 2025-11-05 23:55:21 +03:00
Emin Arslan
be6e1cd684 Improved the repl to return to evaluation upon error. Also added an exit command 2025-10-14 21:06:11 +03:00
Emin Arslan
965804c18d General style changes, nothing major 2025-10-14 19:01:29 +03:00
Emin Arslan
a905ab2b42 Added bind-function primitive that allows us to define functions, also changed evaluation to allow for a persistent environment 2025-10-12 21:58:54 +03:00
Emin Arslan
aa066f87d0 Initial state - basic lexer + parser + interpreter 2025-10-12 21:33:57 +03:00