Are there are good workarounds when breaking changes to occur? No idea if/how well breaking language changes can be isolated to stay within individual crates.
[0] https://subscription.packtpub.com/book/programming/978178934...
I don't think that matters at all. If I try to build a new project with an older version of Rust, the compiler will still throw errors when stumbling upon newer features.
I don't think so.
Both C and C++ are specified in international standards. That's the gold standard.
Java has very concrete versioning and specification process.
Python is also exemplary in its release and versioning process.
C# even breaks down versioning in terms of both CLR and fundamental frameworks.
Exactly which widely used language do you think is missing from that list?