It is powerful and pleasant to use, particularly once a moderate level of experience has been reached. The safety enables significant changes to existing code to be made quickly and with confidence. In particular, the safety enables code that is designed more actively for performance, especially parallel performance. (Roughly 70% of critical security vulnerabilities are due to memory safety bugs.) Crashes and security vulnerabilities are much less likely. Ultimately, choice of language for a code component is an engineering decision, with corresponding trade-offs, and is best decided by individual teams. For existing components it's more complicated!.For new components and completely rewritten components there should be a strong bias towards using Rust, especially for code around Firefox but not within Firefox.In summary, Rust should be used in the following situations.
The goal of this section is to provide some high-level guidelines about when Rust should be used.