I rewrote 100klines at least from C#1 to C#2 when generics came in 2.0. It was compatible in that the non generic code still worked, but I don't really see what difference that made. If we didn't want to upgrade the cod me then we wouldn't have updated the compiler!
Obviously if you don't want the benefits of Py3 then you don't have to pay the upgrade cost either.
How? Scala has been throwing out bad features in pretty much every single release for the last 5 years.
It's nothing breathtaking, it just gets done, people are happier and the language gets better.
Plus, for this question, the size of the user base doesn't matter: If a developer has to adapt his code to a new language version, he/she doesn't care whether ten or ten-thousand other people have to do the same.
Scala's smaller user base means there are a lot of less people to get mad.
> Scala has been throwing out bad features in pretty much every single release for the last 5 years.
You cannot throw out features in a language with the community size C# has, otherwise you just get another Python 3.0.
a) Microsoft is in an excellent position to make such
changes, unlike Python, because Microsoft shops will
largely do whatever Microsoft tells them.
Just have a look at how often they have incompatibly
changed the standard library used by C#.
b) Not every language has to botch the transition as badly
as Python designers did.