Hacker News new | ask | show | jobs
by robertjpayne 18 days ago
Rust releases are just compiler toolchain, maybe some new syntax features. Java includes the JVM which is subject to way more security issues and needs much more frequent updating.
2 comments

But can't you continue to run older bytecode versions on newer JVMs? I think you can also specify the source version separately.
Yes, you can. There is no need to recompile, unless you're interested in new language features.

Maintaining binary compatibility is a principal goal of the platform which continues to constrain design decisions for all future changes.

There are some actual removal of feature too (breaking backwards compatibility on purpose). But those come with deprecation warnings for years before the actual feature is removed. And even then quite often it is still possible to enable with some feature flag for a version or two.
> Java includes the JVM which is subject to way more security issues and needs much more frequent updating.

Then releasing more often is better, because the security fixes get out of the door faster?!

If previously a Java Update took 3 years, then the corresponding JVM version would be 3 years old as well.

If there were patch release in between, I see no difference to now.

Patches are released continuously. The upstream versions get them immediately and they are then backported to LTS versions. Whether the patches actually become available simultaneously I cannot say without.