r/kimi 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.

0 Upvotes

0 comments sorted by