Monomorphization
/ˌmɒn.oʊˌmɔːr.fɪˈzeɪ.ʃən/ · Noun · Development
Definitions
A compile-time code generation strategy — used by Rust, C++ templates, and similar languages — that creates a specialized copy of each generic function or type for every concrete type it is instantiated with, yielding zero-cost abstraction at the expense of larger binary size.
In plain English: When the compiler creates a separate, optimized version of generic code for each specific type it's used with, trading larger programs for faster execution.
Example: "Monomorphization means `Vec<u32>` and `Vec<String>` each get their own machine code, so there's no vtable overhead at runtime."