jolt/test
Yogthos 877373b7e6 aot: marshal compiled namespaces to bytecode images
Adds src/jolt/aot.janet: save-ns / load-ns-image marshal a namespace's compiled
var cells to a Janet bytecode image and load them back, skipping
parse/analyze/emit/compile on reload.

Compiled functions close over core fns (cfunctions) that can't marshal by value,
so we marshal against a dictionary built from the baked-in runtime env
(env-lookup jolt-runtime-env, which chains to the Janet boot env): core fns and
builtins are referenced by name, only user bytecode and its var cells are
serialized. The runtime env is identical at save and load time (same binary), so
the dictionaries match.

Test round-trips a namespace (constant, fn over it, core-fn user, recursion) into
a fresh context and confirms the loaded vars run and stay redefinable.
2026-06-06 02:57:32 -04:00
..
integration aot: marshal compiled namespaces to bytecode images 2026-06-06 02:57:32 -04:00
spec destructuring compliance, deps.edn comments, clojure.java.io shim 2026-06-06 01:01:04 -04:00
support feat: core.async Phase 3 — channel transducers + dropping/sliding buffers 2026-06-05 15:40:24 -04:00
unit support type hints; make metadata coherent 2026-06-06 00:36:10 -04:00