4 ms·
I would add C# to the list of languages with good backward compatibility and progression with every new version. Very similar to Java, and has a lot more featu
by harshalizee 6y ago
I would add C# to the list of languages with good backward compatibility and progression with every new version.
Very similar to Java, and has a lot more feature set with somewhat decent documentation.
- Yhippa 6y agoOne thing I've always admired about C# is that it's an ISO standard. Which I'm not sure if that really means much these days in terms of computer programming languages. It seems like it would be an amazing hedge against a private organization co-opting it in the future.
- int_19h 6y agoThe catch is that C# standardization lags behind language evolution. At the moment, the most recent edition is ECMA-334:2017 aka ISO/IEC 23270:2018. It corresponds to C# version 5.0, originally released back in 2012 - it was the one that introduced async/await, and it's still missing stuff like null chaining. (for the curious, here's the complete list of C# language versions: https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-version-history https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csh...)
- kaba0 6y agoI’m not sure how true it is, but haven’t been some quite great breaking changes with .NET core, .NET, I don’t even now where they are now.
- thu2111 6y agoYeah, .NET is an odd choice to praise for backwards compatibility. .NET 1 -> .NET 2 was iirc a total break due to the integration of generics, amongst other things. Source code had to be rewritten. .NET Framework -> .NET Core was another total break. Lots of .NET code that worked on Framework didn't run on Core at all and had to be ported to different library or required other changes. The fact is, the .NET world has made moves that obsoleted lots of prior code several times. Java never has, unless you count the various boulders rolled down the hill at people using JVM internal APIs.