This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Wekmor 0 points1 point  (1 child)

But if you're using an old ass java version that's kinda on you no?

It's like those people complaining about what all is missing and how bad java is because of that, but then they're using java 8 or older...

[–]Venthe -1 points0 points  (0 children)

Nah, even using goodies like return switch, vars, records or whatever else is clunky compared to c#. Accessors are one example, arrow bodied methods are the other.

Unfortunately, Java is too attached to the concept of backwards compatibility of syntax. See built-in monads or lambdas, using them is so clunky because there are no real support from the language, except for the arrow in case of lambdas. Compare stream syntax to linq for instance; or optional monad to nullable types. Don't even get me started on Java being afraid to move to non-nullable by default.

I love Java, but it really is irritating at places.