Jruby vs. rubinius

here are my slides – it was an epic battle:

PWNED!


http://tim.lossen.de

:))
I like the slides !

OMG! :slight_smile:

-Tom

On Sat, Mar 10, 2012 at 4:00 PM, Tim L. [email protected] wrote:


To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email


blog: http://blog.enebo.com twitter: tom_enebo
mail: [email protected]

… wait until you see the video! :slight_smile:

On 2012-03-12, at 6:29 PM, Thomas E Enebo wrote:

http://xircles.codehaus.org/manage_email
To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email


http://tim.lossen.de

I saw it live - it was great!

Best greetings,
Paweł Wielgus.

2012/3/12 Tim L. [email protected]:

thanks, paweł!

for the others – here is a sneak preview:

Imgur

tim

On 2012-03-14, at 16:06 , Paweł Wielgus wrote:

On 2012-03-12, at 6:29 PM, Thomas E Enebo wrote:

To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email


http://tim.lossen.de

On Thu, Mar 15, 2012 at 7:25 AM, Tim L. [email protected] wrote:

thanks, paweł!

for the others – here is a sneak preview:

IMGP3903 | Jan Dudulski | Flickr

Thanks for sharing! Looks like you guys had a blast.
Any slides/recording?

for slides, see link below in this thread. i’ll post a link to the video
once it has been published.

tim

On 2012-03-17, at 1:30 PM, kedar mhaswade wrote:

Any slides/recording?

Paweł Wielgus.

-Tom

To unsubscribe from this list, please visit:


http://xircles.codehaus.org/manage_email
To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email


http://tim.lossen.de

and here it is, finally:

enjoy :slight_smile:

On 2012-03-12, at 20:50 , Tim L. wrote:

blog: http://blog.enebo.com twitter: tom_enebo
http://tim.lossen.de


To unsubscribe from this list, please visit:

http://xircles.codehaus.org/manage_email


http://tim.lossen.de

I’m going to pick on one thing Dirkjan said, about JRuby using hash
tables for instance variables.

Currently JRuby uses a name->index table on the object class, that
indexes into an array on the object instance. Whilst not quite as
efficient as compiling a class layout (or the shadow class concept
from self), it is good enough.

e.g.

You have a class Foo, that has instance variables @a and @b.
Foo.class has a table that maps @a to index 0, and @b to index 1.
Each instance of Foo then has an array of objects of length 2, which
stores its instance variables.

To get @a of an instance of Foo, f, in pseudo-java, it would be:

f.ivarTable[f.class.ivarTableIndexOf("@a")]

So, each instance of Foo, need only allocate an array to hold just the
instance variable data, instead of a generic hash table to hold both
key+data pairs.

And with jdk 7, ivar accesses are performed using method handles, so
there is no name->index lookup on every access, the index of the ivar
is stored in the method handle, so an ivar get/set is just an array
element access with a constant index.

Yeah, I thought I heard that too, but wasn’t sure.

Dirkjan said many things about JRuby that were patently wrong. I’d
like to get a chance to to go head to head with any one of the core
Rubinius guys at a similar event some day :slight_smile:

  • Charlie