This is a common misunderstanding. Rust’s type system and borrow checker are not significant reasons for its compile times, and Rust compile times aren’t really worse than equivalent modern C++ code.
But Rust's type system an borrow checker are not something you want to go without in Rust, while in C++ many codebases prevent the use of some features to reduce compile time right?
“Traditional” C++ looks a lot more like Java, and often like C.
Much of the compile time of both Rust and C++ comes from monomorphization and linking, both of which do a lot of work to support the zero-cost high-level abstractions favored by both languages.
> Rust’s type system and borrow checker are not significant reasons for its compile times
But isn't "hard" monomorphization a property of more complex type systems (generics, type variables, etc.)?