Roadmap
mu stays minimal, self-hostable, practical, and predictable. The roadmap is a sequence of small, testable steps that keep the compiler, VM, and documentation in lockstep.
North star
- Keep the grammar and builtin surface small.
- Make the compiler and VM behavior explicit and testable.
- Keep the host self-contained while growing the stdlib in mu.
- Ensure VM and native backends agree on semantics.
Phase 0 · Consolidate what exists
- Align the spec, grammar, and docs with current behavior.
- Make stable syntax and builtin contracts explicit.
- Ensure examples run in both VM and native modes.
Phase 1 · Tooling via flags
- Add
-check,-fmt,-test, and deeper compile flags. - Keep the UX simple: one binary, flag-driven workflows.
- Make formatting deterministic.
Phase 2 · Diagnostics
- Source-aware stack traces.
- Deterministic runtime errors with locations.
- Shared test fixtures across VM and native.
Phase 3 · Concurrency + sockets
- Process, concurrency, and socket builtins.
- Verified semantics with both unit and integration tests.
- Shared
.mutest fixtures across runtimes.
Phase 4 · Module system contract
- Lock down import rules, caching, and init order.
- Ensure deterministic import resolution across platforms.
Phase 5 · Self-hosting
- mu-written lexer and parser.
- A documented bootstrap flow from stage-0 to stage-1.
Phase 6 · Carefully-scoped additions
- Only expand the core if real programs demand it.
- Prefer stdlib growth in mu over adding host builtins.
Learn more
For the authoritative roadmap and acceptance criteria, see docs/Roadmap.md.
Next steps
- Read the runtime guide for VM/native context.
- Explore the standard library to see how features land in mu.
- Start with the language tour if you’re new.