Abstract
Rust’s reputation for being slow to compile can be a major obstacle for developers who value rapid iteration and feedback. The easy answer is that iteration is slower, but we need less cycles as the code written tends to be more correct.
We’ll explore strategies to take control of Rust’s compilation time, from optimizing compiler options and leveraging faster linkers or faster compilers, to reusing compilation results between projects with sccache or shared target folders.
However, some language features, such as code generation and monomorphization, can significantly impact compilation time. We’ll see what you can do about them.
But what if you could avoid recompilation altogether? We’ll present techniques for decoupling execution flow from compilation, including file-based control and embedding scripting support. And for the truly adventurous, we’ll dive into the world of dynamic hot reloading of Rust code using unsafe code.