The 'Rewrite It In Rust' (RIIR) movement has evolved from a meme into a practical strategy for infrastructure projects. While Rust offers memory safety and performance, it is not a universal solution. Successful adoption often depends on project goals, team expertise, and the complexity of the existing codebase.
Performance gains vary by implementation. For instance, the uutils sort utility is four times faster than GNU sort due to parallel merging, while the PNG crate outperforms libpng by using automatic SIMD vectorization. However, binary size remains a challenge, often mitigated by multicall binary techniques like those used in BusyBox.
Rewriting software inevitably introduces new bugs and regressions. Notable projects like Prisma and Loglog Games faced significant hurdles, leading to project abandonment or reversion to previous languages. Integration efforts, such as curl with hyper, also demonstrated that the final stages of migration can be disproportionately difficult.
Strategic adoption is key, as seen in the Linux and Windows kernels where Rust is now integrated into production. Experts recommend phased implementation over full rewrites to minimize risk. Projects typically take months for small tasks, one to two years for medium ones, and up to five years for large-scale systems.





