this post was submitted on 09 Jun 2024
232 points (80.2% liked)

> Greentext

7487 readers
2 users here now

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] anus@lemmy.world 74 points 4 months ago* (last edited 4 months ago) (13 children)

pervasive unchecked nullability

Framework management is hell, fat binaries inconvenient and not default

No option monad in the standard lib

Cross version dependencies simply don't work in some contexts

Compiler output only marginally better than working with c++

At least it doesn't have Gradle.

[–] AdamBomb@lemmy.sdf.org 9 points 4 months ago (6 children)

Null reference checking by the compiler is enabled by default in new C# projects.

C# doesn’t come with an option monad in its standard library, but its cooler sibling F# does.

[–] kogasa@programming.dev 1 points 4 months ago (5 children)

You can also easily write your own option monad or use a tiny library that does.

[–] anus@lemmy.world 2 points 4 months ago (1 children)

Good idea, then patch the whole standard library and dotmet framework and most popular libraries to use that tiny library

[–] kogasa@programming.dev 0 points 4 months ago (1 children)

You don't need to use the same one. Just don't expose it publicly in libraries.

[–] anus@lemmy.world 0 points 4 months ago (1 children)

This is the stupidest thing I've read all day

[–] kogasa@programming.dev 0 points 4 months ago
load more comments (3 replies)
load more comments (3 replies)
load more comments (9 replies)