CONSTANT_Dynamic bootstrap signature restriction

Brian Goetz brian.goetz at
Wed Mar 7 18:28:00 UTC 2018

> Daniel (S), Brian,
> i think your view on this subject is biased by the fact that you built that library.

I can understand why you'd think that, but allow me to correct.  My view 
is biased by the fact that I built the _first_ such library, and it was 
pretty annoying, and I want to save future programmers from this 
unnecessary annoyance.  And that we're working on language support that 
virtually guarantees that others will want to write similar Java 
libraries.  If this were just about compilers emitting bytecode, I 
wouldn't care.

> And i will re-use the argument than Brian use rightly about java.lang.invoke, not a lot of people will write BSMs, so modifying an already complex API call (callsite info * lazy loading of constants * conversion of bsm arguments * varargs) to take care of hiding potentially unused arguments only for few users does not worth the added complexity.

I am saying that I imagine a future where the number of people writing 
BSMs for condy is at least 100x bigger than it has been historically.  
Again, if I thought this was just about me and you and Charlie, I 
wouldn't care.  But I don't think that's the case here.

More information about the valhalla-spec-observers mailing list