Is it very different from the call sites in JRuby? They have a solid 
invokedynamic implementation to look at already. Might inspire you in a few 
places :-)

Cheers

Le 28 nov. 2011 à 17:20, Jochen Theodorou <blackd...@gmx.org> a écrit :

> Am 28.11.2011 14:21, schrieb Rémi Forax:
> [...]
>> Yes, because of the bootstrap method, you interpose a stack frame loaded
>> with the classloader of RT, so you will have trouble with all calls that
>> are sensitive to the class of the method in the stack trace.
>> 
>> The workaround I use is to put the jar containing RT in the bootstrap
>> classloader.
>> It's far from ideal.
> 
> maybe I will have to make a bootstrap method per class then... but...
> 
>>> As for the guards... if you now say that the guards produce additional
>>> stack frames, visible to Class.forName, then this puzzles me a bit..
>>> why is that? Or did I misunderstand you again?
>> 
>> the guard can produce additional stack frames, the guard method is
>> itself loaded from a class
>> of the bootclasspath but this method can calls methods in RT.
>> Practically, problems come when you bootstrap or when the slow path is
>> called because
>> both call methods in RT.
> 
> if the guards produce stackframes visible to Class.forName, then putting the 
> bootstrap method on each class, won't do it...I guess it won't do it anyway, 
> since I need the first time to invoke the method handle myself and then Java 
> API will be in the way. The funny thing is... with Groovy's current method 
> call site caching it works most of the time... well, I have to think about it 
> a bit more. But if I have to generate classes again the gain from 
> invokedynamic is not that much
> 
> bye blackdrag
> 
> -- 
> Jochen "blackdrag" Theodorou - Groovy Project Tech Lead
> blog: http://blackdragsview.blogspot.com/
> german groovy discussion newsgroup: de.comp.lang.misc
> For Groovy programming sources visit http://groovy-lang.org
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "JVM Languages" group.
> To post to this group, send email to jvm-languages@googlegroups.com.
> To unsubscribe from this group, send email to 
> jvm-languages+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/jvm-languages?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to jvm-languages@googlegroups.com.
To unsubscribe from this group, send email to 
jvm-languages+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=en.

Reply via email to