Hacker News new | ask | show | jobs
by embrassingstuff 2174 days ago
Is the JVM spec itself really a moving target ?

I am working on a heavily customized java7/jvm7 internals engine. So I am years behind.

But arent most of the changes in the language / internal implementation ?

I agree however that trying to chase commodity processors is a fools errand.

1 comments

> Is the JVM spec itself really a moving target ?

Yes, it is. Every new Java release brings a new JVM spec and a new version of the classfile format [1]. How much changes varies from release to release – in some Java releases, little changes other than the classfile version number; in other Java releases, there are significant new features – new opcodes, new class file attributes, new constant pool entry types, etc.

> I am working on a heavily customized java7/jvm7 internals engine. So I am years behind.

The most obvious thing you'd be missing would be support for the CONSTANT_Dynamic_info, CONSTANT_Module_info, and CONSTANT_Package_info constant pool entries.

There are a bunch of new classfile attributes, but you may be able to get away with just ignoring the newer ones, at the cost that certain newer features won't work correctly (such as modules introduced in Java 9).

I don't think they've added any new opcodes since the introduction of invokedynamic in Java 7. (But, there is always the chance that some future Java release will.)

[1] https://docs.oracle.com/javase/specs/index.html