happy new year!
John Rose
John.Rose at Sun.COM
Wed Jan 21 15:33:11 PST 2009
On Jan 21, 2009, at 6:33 AM, Jochen Theodorou wrote:
> John Rose schrieb:
> [...]
>> 8. work with brave language implementors (hi, Charlie, Brian) who
>> want to try this stuff out sooner rather than later
>
> since Groovy 1.6 seems to finally setlle down I would have time to
> actually produce a Groovy version that uses the method handles and
> invokedynamic stuff. But for this I need a patch that actually
> compiles
> on my system. I had problems with the earlier beta version, but b42
> seems to compile fine.
I've started putting the Mercurial hashcode of the baseline revision
in the series file (.hg/patches/series) of each patch repository.
For people who attempt their own builds (that's all of us at present)
that will make it easier to apply the patches cleanly, and to know
that resulting bugs are real, not due to micro-version skew.
> The more language adopt it early the more optimization into different
> directions can be done. And maybe one or two limitations will surface.
I hope and expect so!
> For this I don't need a modified javac since the asm lib seems to
> support invokedynamic.
Right.
BTW, the next version of invokedynamic (as emitted by yesterday's
mlvm/langtools push and coming RSN in mlvm/hotspot/indy.patch)
completely omits references to java.dyn.Dynamic in the constant
pool. The CP index in the instruction is to a CONSTANT_NameAndType,
so don't use a CONSTANT_[Interface]MethodRef. The two extension
bytes (last of five) are both required to be zero and reserved for
future use.
I'm eager to see what Groovy can do with these new goodies.
BTW, what do you think are the chances of interfactoring Groovy's MOP
with Attila's? The JSR 292 adoption might be a good time to think
about it.
-- John
More information about the mlvm-dev
mailing list