cint

about cint

cint is an integer-only, C-family programming language. Every value is an integer in a declared range, and each arithmetic operator's spelling says whether it checks, wraps or saturates. A plain operator that cannot give the exact result stops the program with a fault record that names the operation, its operands and the source position. cintc, the compiler, is written in cint, rebuilds itself byte for byte, and emits standard C17 that GCC, Clang, MSVC and Apple Clang compile.

what it is for

The specification defines one result for each program and its inputs, and every conforming implementation must give it. A hash then compares two runs under different compilers or on different machines, and any difference between them is a defect, not rounding. The papers on this site apply that to simulation time and state: the time compatibility rules that Trick simulations and HLA federations share, and an orbit stepped in integers that reaches the same state under four compilers on three machines.

status

cint is experimental. Its language profile, cint-core-1, is a draft, and breaking changes are likely before 0.3.0.

released
v0.1.1, 2026-10-06: the compiler, the seed compiler that builds it, the runtime, the cint command, the reference cint_ref, the conformance programs, and the specification editions SPEC-00P.1, SPEC-01P.1 and SPEC-04P.1. The release has no standard library or debugger, and its compiler does not yet accept integers wider than 64 bits.
development tree
The interpreter cint-interp, the debugging tools, GPU code generation and the timings on the home page and the news page are in the development tree and not in a release. No release includes the code behind their numbers yet, so those numbers cannot be rerun from the public source.
papers
The papers have not been peer reviewed or formally presented. Each paper states its limits and what it does not claim.
numbers
Every number on the site comes from a recorded run. A number not yet measured says projected and where it comes from.

what this site does not claim

Nothing on this site claims that cint, or any program written in it, complies with, conforms to, or is certified or validated against SISO-STD-018-2020 (SpaceFOM), IEEE 1516 (HLA), Trick or TrickHLA. Each result names what was run, under which compilers and on which machines, and the record or hash it produced.

NASA, SISO, IEEE, Pitch Technologies, Microsoft and IBM are named here to identify software, standards and typefaces that were used or cited. None of them is affiliated with this site, sponsors this work or has reviewed it, and no author cited on this site has reviewed it.

how the work is done

The author sets the requirements, the specifications and the acceptance thresholds, and reviews the results. AI coding agents write much of the code and documentation. The claims here rest on the conformance programs and the receipts, not on that process.

A release is one commit in the public repository, exported from the development tree by a list of allowed paths and checked before it is published. Each release names its compiler source identity, a SHA-256 over the compiler's source, and the specification editions it includes.

author

Harriett Little writes and maintains cint. ORCID iD: https://orcid.org/0009-0008-9844-6452. The contribute page has contact details.

independence and support

cint is an independent project. It is not a product of a company, an agency or a standards body, and it receives no institutional funding. Readers can support it through Ko-fi.

where things are