Rust gets around the shortcomings of its generics by providing an absurdly powerful macro engine.
It's a great idea when not abused too much for creating weird little DSLs that no one is able to read.