About
From a compiler assignment
to a language with a thesis.
Astra started as a university compiler-construction project in October 2025. It kept going because a question wouldn't let go: if most new code will be written by machines, what should the language they write look like?
CreatorMajid Nisar
Astra and Mifa are created and maintained by Majid Nisar — the compiler, the runtime, the package manager, the test suite, and this site. The project's detailed write-up, design notes, and development history live on his site:
ThesisWhy build a language in 2026?
Because the economics of code changed. When agents generate most of the code, the bottleneck moves from writing to verifying. Dynamic languages push verification to runtime — the most expensive possible place. Astra's bet is that the language itself should be the verification layer:
- Diagnostics that are a stable machine interface (JSON, error codes, suggestions), not prose on stderr.
- A type system strict enough to reject whole classes of generated mistakes before execution.
- Native compilation, so a verified program is also a fast program.
- Eventually, agent concepts in the grammar itself —
tool,agent,prompt,memory— so multi-agent systems typecheck like ordinary code.
PrinciplesHow the project is run
A feature is "working" only when a test compiles it, runs the binary, and asserts the output. The public progress page and the in-repo tracker are the same document in two forms.
Five architecture bets (memory model, typing, backend, AI primitives, Python interop) were debated, ratified, and locked with rationale and accepted costs. Amendments require a documented process, not a mood.
Performance and verification numbers come from a scripted, output-verified validation harness in the repository. It publishes with the source at v1.0-beta; until then the compiled-binary side is reproducible from any release.
TimelineMilestones so far
| When | What |
|---|---|
| Oct 2025 | v0.1 — university project: lexer, parser, first AST |
| Nov 2025 | v0.5 — native compilation, Docker CI, first pre-built binaries |
| Jun 2026 | v0.6 — honest alpha reset: JSON diagnostics, verify mode, AI-first thesis adopted |
| Jul 2026 | v0.7 (released 2026-07-06) — source spans, structs/Result/closures native, REPL, dyn, ARC scaffolding, rich diagnostics, Mifa lockfile + registry protocol + publish/auth + --json |
| Jul 2026 | v0.8.0-alpha (tagged 2026-07-07) — true LLVM-IR default backend (--emit-ir, --target cross-compile, --legacy-c fallback), async/await (sync lowering), ignored-test burn-down complete (10 → 0), end-to-end regression suite; 285 tests green |
| Jul 2026 | v0.9.0-alpha (tagged 2026-07-09) — soundness milestones: nominal structs, enums with payload variants, ? operator, try/catch (function-local), tuples + destructuring, impl blocks, bitwise ops, Python-parity Tier 1–2 features |
| Jul 2026 | v0.9.1-alpha (released 2026-07-15) — first cross-platform binary release (Linux x64, macOS Intel + Apple Silicon, Windows x64); closures callable (pipeline-order fix), ARC scope-based memory reclamation, compiler never panics on malformed input, CI gates (fmt / clippy / audit / llc corpus); 449 tests green |