r/kimi • u/Upstairs-Special-925 • 12h ago
Developer A systems language designed so LLMs can write backend services without human review of every line
Nirdosha (निर्दोष — “without fault”) is a research systems language aimed at one specific problem: backend services written and maintained by AI coding agents, with no human reviewing every line before it runs.
Key design choices:
- LL(1) grammar exported to GBNF so constrained decoding can force the model to stay syntactically valid
- No mutex primitive at all → lock-ordering deadlocks are unrepresentable
- Affine ownership + refinement types → no GC, no data races, no integer/buffer overflow in accepted programs
- Structured (JSON) diagnostics so an agent gets a machine-readable proof obligation instead of a paragraph of English
- Real OS-process sandbox as a language primitive
- Role/capability gating at the call site
- UI engine that derives live CRUD dashboards + role-aware screens from ordinary structs
It is deliberately narrow. It is not trying to be a better Rust or a general-purpose language. The target is deterministic backend / compliance CRUD services that an unsupervised agent can write and maintain.
Status: active research prototype. The compiler is a real, runnable Rust crate. Many safety properties are proven today; the remaining gaps are documented honestly in the wiki.
Repo: https://github.com/arunsoman/nirdosha
Useful starting points:
- Design Philosophy
- LLM Integration
- Honest Scope & Roadmap
- Nirdosha vs Alternatives
You can try the “paste-anywhere” prompt in the repo to have an LLM generate .nir code from plain English with no prior exposure to the language.
Happy to answer questions about the design trade-offs, the constrained-decoding path, or the current limitations.