A standard for reading and writing code in any language.
The standard specifies how a program written in English can be read and written in another human language without the program changing. It defines the localization model, the dataset it uses, the order in which a term is resolved, how these are versioned, and what a tool must do to be called NADA.
What the standard specifies.
NADA is a localization standard for source code, not a programming language and not a tool. It describes the behavior a conforming tool must implement so that the same source reads the same way everywhere.
The file is canonical. The view is translated.
The bytes on disk stay in canonical English. The editor renders the programming language’s vocabulary — keywords and standard library — in the reader’s language, and the identifiers and string contents the author wrote are left exactly as written. The view is faithful and reversible: it round-trips to the same source, byte for byte.
def greet(name):
if name:
return f"Hello, {name}" परिभाषा greet(name):
अगर name:
वापसी f"Hello, {name}" The brain: how every term is written, in every language.
The localized view is produced from a compiled dataset — the brain — that records, for each term in a programming language’s vocabulary, how it is written in each human language. The standard defines the dataset’s shape and the contract a conforming tool reads it through. It does not endorse any one vendor’s copy: the structure is the standard, the data is open.
The mappings are maintained openly under NADA’s licensing: language data is CC-BY; the pipeline that builds and checks it is AGPL. Coverage and counts are in the registry.
One term, one rendering, resolved in a fixed order.
When more than one mapping could apply to a term, the standard resolves it by a defined order of authority — the cascade. Resolution is deterministic: the same source resolves to the same rendering in every conforming tool, regardless of vendor.
- 1
The programming language
A term is resolved within the vocabulary of the programming language the file is written in. Cross-language collisions never decide the outcome.
- 2
The human language
Within that vocabulary, the mapping for the reader’s chosen human language is selected. The author’s own identifiers and strings are out of scope and pass through untouched.
- 3
The authoritative mapping
Where a curated mapping exists for that term and language, it wins. [TO CONFIRM: the precise tier names and any project- or workspace-level overrides above the curated default.]
- 4
Canonical fallback
If no mapping resolves, the term is shown in its canonical English form. A reader is never shown a guess, and the view never drifts from the source.
Stable to rely on; changes are declared.
The specification and the dataset are versioned independently, and a conforming tool declares which version of each it implements. One rule governs change: a localized view of an unchanged file must stay reversible and deterministic across versions.
Anyone may build it. Only conforming work may carry the name.
A tool conforms when it implements the localization model, reads the dataset through the defined contract, resolves terms by the cascade, and round-trips every view losslessly to the canonical source. This is what lets a file written by one person open and run identically for the next, in any language and in any conforming tool. The NADA name is reserved for tools that do this; a public compatibility test checks it.
Four rules the standard always follows.
-
Neutrality.
The standard prescribes behavior, not a vendor. No human language is privileged over another, and no single company can change the resolution rules to favor its own product. The cascade is the same for everyone.
-
The file is canonical.
The source on disk is the program. NADA never rewrites it. A localized view is only a view, so a file written by one person opens, runs, and diffs identically for the next, in any language.
-
Reversibility.
Every projection is lossless and round-trips. What you read in your language maps back to the canonical term with no ambiguity. Turn the view off and the original English source is unchanged, byte for byte.
-
Color is content.
Following the design system: scripts carry meaning, and a script rendered in ink is content, not decoration. Emphasis uses italic or bold, not color. The standard follows the same rule.