Development
Zena is developed in the open, and unusually: almost entirely by generative AI under human review. This section is the record of how that works, what state the project is in, and — at length — why the language ended up the way it did.
How the project works ​
- Built with AI — what "almost entirely" means in practice, how the loop actually runs, and what has gone wrong.
- Status and roadmap — what works today, what's being built now, and what's deliberately not planned.
- Contributing — getting set up, finding your way around the repository, and what a change is expected to include.
Why the language is like this ​
The Design pages take one decision at a time — why
strings hide their encoding, why iteration
returns multiple values instead of
allocating an Option, why unions
restrict what can go in a union, why
primitives are never boxed implicitly,
and why
regex is a library.
Behind them are the working documents in
docs/design/,
written while a decision was being made and covering far more ground. They're
worth reading for the full argument, but the reference is the
authority on what the language does today.
Where to start ​
If you want to understand the project's reasoning, read Why Zena? and then the Design pages.
If you want to work on it, read Contributing and
AGENTS.md — the
latter is the instruction file agents are given, and it doubles as the most
concise description of the project's standards.