Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Early C# often depended on libraries that were MS-specific, partially native code, and are often no longer even available.

This changed around 2014-ish, as a result C# has been really stable for a decade.



Possibly. I'm a relatively recent comer to the c# ecosystem (2021ish). It's been good and avoids some of the warts of java.

Really, though, I'm very happy there is competition in the GC enterprise languages for linux. Regardless of who is "better", the competition will continue to drive progress in this area.


.NET framework is still supported, you can target "net48" instead of net8.0 in your project build targets.


Some C# features don't work in that mode though.


You can opt into most of them by setting LangVersion manually to your preferred C# version.

It works since most new C# features are just syntactic sugar which is lowered by the compiler.

Some of them require new types in the BCL (e.g. Range/Index, marker types for required/init/records), but for that you can just reference PolySharp which will generate the missing types on the fly.

Features that will not work typically also need runtime support, so default interface methods, static interfaces and the like will not work.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: