On 04/14/11 15:36, Charles Oliver Nutter wrote:
> On Wed, Apr 13, 2011 at 4:40 PM, Clifford Heath<no / spam.please.net>  wrote:
>>> This is JRuby 1.6.1.
>> Yep... same as 1.6.0 and 1.5.6. What's you point?
>
> I'm confused...you made it sound as though JRuby results would be
> different than the ones I posted. Am I missing something? Those
> results *were* run with JRuby, and I was hoping you could tell me what
> was missing...

I presented results from MRI 1.8.7, JRuby 1.6.0, and Rubinius,
and showed that they all had different shortcuts, and none
reliably kept the Hash contract (of using eql? and hash).
I.e. you can't rely on sensible code working the same in MRI
and JRuby.

I think that's a problem. If you don't, then I'm done...

Unless you care to point me to the place in the JRuby code
where this shortcut occurs (where I could make a change to
make it invisible), and a performance benchmark that would
show the effect of doing so. Then I'll happily make the
experiment to see whether I'm right (and the shortcut can
be made invisible without affecting performance measurably,
i.e. above the noise level of the benchmark). If I'm not,
I'll openly admit I was wrong... but I've done some pretty
hardcore optimizing in machine code before, and I think I
can win this one.