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

> Java is maturing into a syntactically nice language, albeit slowly, and it's the backbone of many medium and large companies.

I've heard about Java initiatives to improve it, but can you point to examples of how how Java "is maturing into a syntactically nice language"?

I'm tempted to learn it, but wonder whether it would really become nice enough to become a 'go-to' language (over TS in my case)





I've always felt it was verbose and the need for classes for everything was a bit of a overkill in 90% of circumstances (we're even seeing a pushback against OOP these days).

Here are some actual improvements:

- Record classes

public record Point(int x, int y) { }

- Record patterns

record Person(String name, int age) { }

if (obj instanceof Person(String name, int age)) { System.out.println(name + " is " + age); }

- No longer needing to import base Java types - Automatic casting

if (obj instanceof String s) { // use s directly }

Don't get me wrong, I still find some aspects of the language frustrating:

- all pointers are nullable with support from annotation to lessen the pain

- the use of builder class functions (instead of named parameters like in other languages)

- having to define a type for everything (probably the best part of TS is inlining type declarations!)

But these are minor gripes


It has virtual threads, that under most circumstances let you get away from the async model. It has records, that are data-first immutable classes, that can be defined in a single line, with sane equals toString and hash. It has sealed classes as well, the latter two giving you product and sum types, with proper pattern matching.

Also, a very wide-reaching standard library, good enough type system, and possibly the most advanced runtime with very good tooling.


There are some interesting talks and slide decks that I have to search around to find. Here is one: https://speakerdeck.com/bazlur_rahman/breaking-java-stereoty...

Check jbang.dev, and then talks by its author Max Rydahl Andersen. That could be a starting point.





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

Search: