// the find
rust-lang/rust
Empowering everyone to build reliable and efficient software.
This is the compiler and standard library for the Rust programming language itself. Not a library you pull in — this is what rustc is. Relevant if you're contributing to the compiler, building compiler plugins, or studying how a production systems language is implemented.
The compiler is split into fine-grained crates (rustc_borrowck, rustc_ast_lowering, rustc_codegen_cranelift, etc.) that each own a specific pass, making it unusually navigable for a compiler of this complexity. The diagnostic infrastructure is genuinely impressive — rustc_attr_parsing and the diagnostics subdirectories show the engineering effort behind those famously good error messages. The Cranelift backend (rustc_codegen_cranelift) ships as an alternative to LLVM, which is rare for a production compiler and directly useful for faster debug builds. The CI and issue templates are mature — structured YAML for ICE reports and regression tracking is the kind of thing that scales to thousands of contributors.
Build times to compile the compiler itself are brutal — a full stage2 bootstrap takes 30–60 minutes on good hardware, which makes the contribution loop painful even with incremental builds. The internal APIs are explicitly unstable and break constantly; anything touching compiler internals is living on shifting sand. The polonius borrow checker (the new implementation) has been 'in progress' for years and the legacy/new split visible in rustc_borrowck is messy. The rustc-dev-guide helps, but the actual codebase still has modules where the only way to understand the design is to read the git log — the code itself doesn't explain why.