The documentation
Tripon is a statically typed language for machines with very little room — i8 to i64, no allocator, no runtime. It compiles to C99 by default and to x86-64 assembly on request, through one static binary, ralt.
These pages are the language contract and the toolchain, in reading order. Every program on them is an example in the repository, and every transcript is copied from a live run against the binary this page was written with.
git clone https://github.com/TriponOSS/tripon && cd tripon && makeWhat holds the pages down
A documentation site drifts from its compiler, so the parts that could drift are machine-checked instead: the diagnostic table is generated from spec/errors.csv, and every sample under examples/ is run by the test suite.
make test 42 checks passing, gcc and clang sh tests/determinism.sh byte-identical on every build
The three files in spec/ are the source of truth, not the C code: the specification rewrites them, and the diagnostic table is the same table the compiler emits and the goldens check. Error codes are append-only — never renumbered, never reused — which is what lets a fix written against E0202 still mean the same thing ten releases later.
If you are an agent
Start with the agent interface. The short version: ralt check --json answers with one array, one object per diagnostic, each carrying a code, an exact {file,line,col,len} span and a fix hint — and every command in the toolchain is deterministic, so the same input always produces the same bytes. If you want the whole contract as one fetch, /llms.txt is the playbook.