25 Commits

Author SHA1 Message Date
alnyan 3cefd9ac4e Fix temporaries breaking (let ...) blocks, (gensym) 2026-05-22 13:57:35 +03:00
alnyan 6936966455 Proper quasiquote expansion rules, unquote-splice 2026-05-22 10:10:57 +03:00
alnyan d21f927a24 Add eval in env + env/create, env/load-prelude 2026-05-21 14:55:03 +03:00
alnyan e956f7b68d Change &mut Environment to &Environment 2026-05-21 12:02:19 +03:00
alnyan 777c10d79c Add basic io, port integration tests 2026-05-21 11:36:19 +03:00
alnyan 2b02d382c2 Proper errors for closure arity mismatch 2026-05-21 10:05:48 +03:00
alnyan bf537cbeda Add support for &optional arguments 2026-05-21 09:52:11 +03:00
alnyan 43ff442d89 Add function/macro docstrings 2026-05-21 09:26:55 +03:00
alnyan 92d0a80fb1 Implement closures+upvalues, rework virtual machine 2026-05-20 17:53:15 +03:00
alnyan 4131cb121b Vector specialization 2026-05-11 13:06:55 +03:00
alnyan 01012ae211 Implement unwinding mechanism, repl example 2026-05-08 23:19:17 +03:00
alnyan aa7e371747 Implement loop/return forms 2026-05-08 17:43:12 +03:00
alnyan aa0026fa45 Tracing options, while loop 2026-05-08 17:16:32 +03:00
alnyan 55e38af0ed Fix incorrect offset calculation in label jumps/branches 2026-05-08 16:19:59 +03:00
alnyan 0b242e5384 Improve error handling, better read/compile functions 2026-05-08 15:55:39 +03:00
alnyan 3a88d7a9b3 Split Environment and Machine 2026-05-06 16:31:19 +03:00
alnyan 0c2d6c85bb Add defmacro stubs 2026-05-06 16:17:08 +03:00
alnyan 43938dee3c Add string literals, fix instruction encoding 2026-05-06 14:33:23 +03:00
alnyan a9a67acdce Add comment parsing 2026-05-06 10:48:13 +03:00
alnyan bad52a57c3 Implement setq/let/let* bindings 2026-05-06 09:46:34 +03:00
alnyan 2c84f1fbb2 Add defun and math prelude 2026-05-05 16:06:36 +03:00
alnyan 1392801e9f Value conversions + more useful native functions 2026-05-02 23:20:15 +03:00
alnyan e3ec0884d2 Add opaque values 2026-05-01 16:05:55 +03:00
alnyan 58cc01c114 Implement missing parser functions 2026-05-01 14:05:10 +03:00
alnyan 36e6cc8364 Initial commit 2026-04-30 16:23:39 +03:00