Skip to content

Runtime contributor notes

Start with the runtime architecture and repository map. Then follow Change the runtime for a small, validated change.

For embedding and scheduler work, see the runtime fiber API, including creation, joins, pinning, cooperative waits, and a complete example.

Two practices matter especially in this codebase:

  • Keep values safe across GC. Allocating code can move Lisp objects; an ordinary Rust local is not automatically a root.
  • Measure performance in the execution regime you mean to measure. Warmup and steady-state execution are different workloads.

For manual changes, use the documentation guidelines. The full repository policy is in AGENTS.md.