Terminology
A canonical language terminology registry with a human-guided approval process.
eksportē asinhroni darbība ielādēLietotājus() {
nemainīgs dati =
gaidi lasiDatus("lietotaji.json")
kam (nemainīgs ieraksts ar dati) {
ja (ieraksts.vārds == nekas) {
turpini
}
}
atgriez dati
}
The percentage shows completed work from the currently defined roadmap. As the project scope becomes more precise, the total number of tasks may grow.
These project layers already exist in the repository and are used in LatNe development.
A canonical language terminology registry with a human-guided approval process.
`.lat` source code is split into structured tokens with Unicode identifier and canonical term identity support.
Imports, declarations, control flow, error handling and function-body constructs already produce structured AST.
LatNe understands identifiers, literals, calls, properties, the `gaidi` and `jauns` constructs, arrays and the first operator-precedence rules.
A terminology workspace for reviewing, validating, editing and approving language terms.
Status, decisions, technical journal, project history and discoveries live alongside the code.
LatNe is being built both for people learning programming and for developers interested in language architecture and tooling.
Once the language core and CLI minimum are ready, the first learning path, student exercises, teacher materials and a simple playground will follow.
The Education MVP starts only after LatNe can actually be run.Parsers, AST, Unicode, terminology, diagnostics, code generation and developer tooling are being built as an open technical project.
View architecture →You do not need to wait until the language is finished. Code, testing, documentation, terminology discussions, examples and well-framed ideas are all useful.
Proposals that keep LatNe natural in Latvian and technically consistent are especially valuable.
Working stages are shown as active. The amber stage marks the current engineering work, while the grey stages are still ahead.
Grey stages are publicly planned, but they are not presented as finished LatNe features. A stage becomes active only when it actually works.
Node.js runtime contract, clean install, GitHub Actions CI and the first regression fixture suite.
Phase 0AFields, access modifiers, constructor, parameters and getter structure.
Next language boundaryA stable contract for nodes, source spans and the parser/codegen boundary before substantial code generation.
ADR 0007The first semantic API layer, where operations are bound to types and meaning instead of being renamed as text.
Phase 1ASemantic transforms, JavaScript code generation and the first program to pass through the complete LatNe processing pipeline.
Phase 1BDiagnostics, source maps, editor tooling, learning experience and only then a broader LatNe web layer.
Phases 2–5The first sample already exposed the next boundary: JavaScript standard API names. LatNe does not aim to rename them mechanically.
The goal is a semantic API layer where a LatNe name is bound to a specific type or operation.
PLANNEDlietotāji.push(lietotājs)
ja (lietotāji.length == 0) {
atgriez []
}
lietotāji.pievieno(lietotājs)
ja (lietotāji.garums == 0) {
atgriez []
}
LatNe is designed as an independent system with its own terminology, architecture and development history.
Latvian is the starting point of the programming experience, not an addition to the documentation.
External tools may be technical building blocks, but they do not define LatNe's identity or public architecture.
Decisions, mistakes and discoveries are preserved so that both the result and the path to it remain visible.
The numbers are generated directly from `ROADMAP.md`. The percentage measures progress through the currently defined plan, not absolute product readiness.
Follow development, take part in discussions, star the project on GitHub or support the work financially.