The last miles

John Rose john.r.rose at oracle.com
Fri Jul 14 20:40:11 UTC 2023


On 14 Jul 2023, at 9:17, Dan Smith wrote:
>> The magic '<new>' method seems reasonable, and provides a path going forward to get rid of new/dup/<init> code. But it doesn't do anything for legacy bytecode. So the problem of needing a bytecode rewriting tool remains.

If/when we decide to do that magic ‘<new>’, and newer classfiles avoid the new/dup/init dance, two good things will start to happen.  First, migration to value types will become somewhat easier, avoiding recompilation in some cases (those cases where a client says ‘new SomeValue()’).  Second, the “dance” will begin to disappear from classfiles, and we can think about disallowing it in newer classfiles, thus taking 10% off the top of verifier complexity and bugginess.  I’d love to put “the dance” in our rear view mirror.


More information about the valhalla-spec-observers mailing list