Charles Oliver Nutter schrieb: > Jochen Theodorou wrote: >> ok, now I see the test... but that is no test with the receiver being null > > Notice my output shows the bootstrapped method getting null for the > receiver argument, and also look at line 61: > > return fake(null).target(b); > > This gets rewritten by AnonymousClassLoader to be a cast to Dynamic...a > dynamic call to target; but the receiver itself is most definitely null. > This would never work through the normal invoke* operations.
ah, ok, I see now. > Unless you're referring to the fact that the target method eventually > bound to the call site is a static method? that confused me, but I realize it has nothing to do with entering the MethodHandle. [...] >> I am only saying that specifying by something that is very likely to >> change very much is not useful. Helping to develop it is something else. > > Specification and development are supposed to go hand-in-hand, why do we discuss that? You are talking about the development process of the spec itself. I not. It is simply a difference if you specify something, write tests for that and then test if your implementation works according to the spec, or if you use an implementation and say that is my spec. The first requires a finished spec, the second a finished implementation. What we really have is that we have a draft for the spec and an implementation, and the spec will be updated because of the implementation and the implementation will be updated because of the spec... it is an incremental process to develop something. And in such cases you cannot take any test as if it where your final spec. [...] >> I expect that to be a little more difficult in Groovy, because we are >> more in touch with the bytecode. > > More in touch with the bytecode? I assume you didn't mean that as an > insult :) hehe, no, of course not. Groovy too does not use all bytecode commands, that are available, only a subset. But I doubt that you in JRuby have to worry about a method argument being an int or long. longs require two slots, ints only one, so it influences indexes for local variables and also commands when you reorder the arguments. Well I guess you know that. bye blackdrag -- Jochen "blackdrag" Theodorou The Groovy Project Tech Lead (http://groovy.codehaus.org) http://blackdragsview.blogspot.com/ http://www.g2one.com/ --~--~---------~--~----~------------~-------~--~----~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/jvm-languages?hl=en -~----------~----~----~----~------~----~------~--~---