Roadmap
What's shipped, what's next. Built in the open.
v0.1 — Foundation
Done- Lexer and parser (square-bracket s-expressions)
- Tree-walking interpreter with ~70 builtins
- Hindley-Milner type inference
- Ownership checker (inferred, no annotations)
- Algebraic effects (declare, perform, handle)
- REPL with time travel and forking
- CLI: new, run, build, test, check, repl
- Basic WASM codegen
v0.2 — Ergonomics
Done- Destructuring in let and function params (vec, map, rest)
- Multi-arity functions
- Module system (use, pub, cycle detection)
- Pipe expressions
- Pattern matching
- ? sugar for Result/Option
- String interpolation
v0.3 — Tooling
Done- Formatter (Wadler-Lindig pretty printer, loon fmt)
- LSP: diagnostics, hover types, go-to-definition
- LSP: completions with types, inlay hints
- Interactive error tutorials (loon explain)
- Error codes (E01xx–E05xx)
v0.4 — Macros
Done- Template macros with quasiquoting and splicing
- Procedural macros (full interpreter at compile time)
- Type-aware macros (macro+)
- Compile-time effects (IO, Net, Env)
- macroexpand for debugging
v0.4.1 — Syntax Refresh
Done- Kill => in match/handle — positional pairs
- Kill / for effects — set literals for annotations
- Universal string interpolation
- Fix dom/ to dom. namespace convention
- Map destructuring with defaults in fn params
- Match guards — expression patterns via match true
- Type methods with automatic dispatch
- Record types with named fields and dot access
v0.5 — Type System
In Progress- Row polymorphism for records
- Trait bounds (Add, etc.)
- Typed AST lowering
- Trait declarations and impls
- Type classes
- Full trait resolution
v0.6 — Effects & Concurrency
- Full effect inference
- Effect composition
- Built-in effects: IO, Fail, Process, Async
- Channels (send, recv, try-recv)
- Async spawn/await
v0.7 — Compilation
- WASM codegen for closures and ADTs
- Pattern matching compilation
- Tail call optimization
- Inline caching for interpreter
v0.8 — Ecosystem
- Package manager (Pond)
- Standard library
- Documentation generator
- Tree-sitter grammar
v1.0 — The Vision
- Content-addressed definitions (Unison-inspired)
- Incremental computation
- LLM integration (ai fn, agents)
- Persistent data structures
- Notebooks / literate programming