That's how Rust editions work too. You can have a Rust 2021 crate depend on a Rust 2015 crate which depends on a Rust 2018 crate, it will all be compiled by the latest compiler even though they are written in slightly different languages (different syntax and in some cases different desugaring)
So that's how Rust can make language changes without splitting the ecosystem and without requiring everyone to migrate all at once
So that's how Rust can make language changes without splitting the ecosystem and without requiring everyone to migrate all at once
To think about it, Java is like this too