3 ms·
To me, C# is a pretty convenient language to work in. It has very good tooling and a lot of support and a huge ecosystem. It also possesses a lot of nice ergono
by IceDane 8y ago
To me, C# is a pretty convenient language to work in. It has very good tooling and a lot of support and a huge ecosystem. It also possesses a lot of nice ergonomic features. All in all, it's a pretty nice language to work in.
However, that doesn't necessarily mean it's a well designed language. Knowing a many languages across paradigms, it is very clear to me that C# is borrowing concepts from a lot of different languages. This is pretty evident almost anywhere. It's trying to be functional, and it nearly feels like it.. until it doesn't. They keep bolting on features that end up being rather anemic clones of the original concepts because C# suffers too much from what it is fundamentally to allow them to be implemented properly.
I mean, most of these features still improve the development experience, but that doesn't mean that these features feel, well, not first class. This is evident in LINQ, the new pattern matching, nullable classes, etc, etc. These all feel like features that needed compiler support to be implemented half-assed instead of simply being libraries, because the language isn't expressive enough.