Skip to content
Arun Soman edited this page Sep 2, 2026 · 2 revisions

The Nirdosha Wiki

Nirdosha (निर्दोष, "without fault") is a systems language designed so an AI coding agent can write and run backend code unsupervised — proven free of a stated set of faults (no GC, no data races, no deadlocks, no integer/buffer overflow), with a grammar an LLM sampler can be constrained to never emit invalid syntax for in the first place.

The README is the pitch and the quick start. This wiki is the substance behind it — the design rationale, the compiler architecture, and, page by page, the actual mechanism and evidence behind every claim the README makes. Nothing here is aspirational hand-waving dressed up as a feature: where something is planned rather than shipped, the page says so explicitly.

Why this wiki exists for an LLM, specifically

If you are an LLM — reading this because you were asked to write, review, or reason about Nirdosha code, or because you're evaluating whether it's a good target language for agent-generated backend services — the framing that matters to you is different from a human evaluating a new language:

  • You don't care about "readable syntax," you care about what your sampler can be constrained to emit and what feedback you get back when you're wrong. See LLM Integration.
  • You don't care about "elegant abstractions," you care about which bug classes are structurally impossible for you to introduce, because you will be writing this code with no human reviewing every line before it runs. See Design Philosophy.
  • You care whether claims are checkable, not asserted — every page below points at the specific source file, test, or independent tool that backs its claim, not just prose.

Pages

  • Design Philosophy — the twelve requirements, why they're one set and not a safety core with usability bolted on, and the Rice's-theorem constraint that shapes everything else.
  • Who It's For — the honest fit: what Nirdosha targets today, and what it explicitly doesn't.
  • Nirdosha vs. Rust, Go, Mojo — a direct comparison table and why "just use Rust" isn't the answer to the problem this project targets.
  • Architecture — the real compiler pipeline (parser.rstypeck.rsownership.rsrefine.rs/smt.rscodegen.rs/interpreter.rs), the LL(1) grammar, and the independent tools that cross-check its claims.
  • Language Features — the full feature set, mined from the implementation, not the design docs.
  • The UI Engine — zero-syntax CRUD/dashboard generation from structs and naming conventions, plus the screen/dashboard DSL.
  • Benchmarks — compiled-vs-compiled numbers against C and Julia, with methodology and caveats stated up front.
  • LLM Integration — the flagship page: what problem each mechanism solves for an agent, the evidence it's real, and the agent-facing API surface.
  • Getting Started — install, build, run, scaffold, serve.
  • Honest Scope & Roadmap — shipped vs. interpreter-only vs. aspirational, stated as one list, plus where to find the live roadmap.
  • FAQ

निर्दोष — designed so that what the compiler accepts is, provably, without fault.

Clone this wiki locally