Why kept
The language-definition paper trail behind Rust compilers & the language definition — what "the spec" currently means in Rust and where the official one is coming from.
Notes
- The Rust Reference — the project's own description of syntax and semantics; explicitly non-normative ("does not have the authority of the compiler"), but the right daily answer to "what are the rules?".
- Ferrocene Language Specification — written by Ferrous Systems for compiler qualification (ISO 26262); structured like a true standard, pinned to specific rustc versions; donated to the Rust Project in 2025 and adopted by the t-spec team (chartered by RFC 3355) as the basis of the official specification.
- The operational rules the Reference leaves open (aliasing models for unsafe code) live in miri's Tree Borrows / Stacked Borrows work and the Unsafe Code Guidelines — the parts of "the spec" still being decided.
- Contrast anchors: the JVMS (contractual, TCK-enforced) and the Go spec (short, readable, authoritative).