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

Yeah, Java has been trying to add every feature under the Sun recently and it's definitely not a boring language anymore (since Java 21 at least, it's impossible to claim otherwise with things like pattern matching being in the language).

As a Java guy, I think this is looking like a desperate attempt to remain relevant while forgetting why the language succeeded in the first place.



That’s an absolutely bad take. Java is still very very conservative with every change, and they almost always have only local behaviors, so not knowing them still gives you complete understanding of a program.

Like, records are a very easy concept, fixing the similar feature in, say, c# where they are mutable. Sealed classes/interfaces are a natural extension over the already existing final logic. It just puts a middle option between none and all (other class) being able to inherit from a superclass.


C# records default to immutability. However, struct records being a lower level construct default to mutable (which can be changed with readonly keyword):

    record User(string Name, DateOnly DoB); // immutable
    record struct Cursor(int X, int Y); // mutable
    readonly record struct Point(int X, int Y); // immutable


Hey, what the hell? It's not a bad take , it's my opinion. Go with your absolutism somewhere else.




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

Search: