Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Ruby VM Roundup: IronRuby runs Rails, Ruby 1.8.7 released, Rubinius inlining experiments

Ruby VM Roundup: IronRuby runs Rails, Ruby 1.8.7 released, Rubinius inlining experiments

This item in japanese

Following Rubinius' first successful run of Rails, and just in time for RailsConf: John Lam reports that IronRuby managed to run Rails:
IronRuby dispatched some simple requests through an unmodified copy of Rails a few days ago. Today, we’re going to show off our progress live at RailsConf. This is an important milestone for IronRuby; it’s our ‘ticket to entry’ to the world of alternative Ruby implementations.

John Lam also points out some of the criticism of IronRuby:
We started our work on IronRuby back in February 2007. Now, just 15 months later, we’ve reached what others are calling the “Rails Singularity”. A few folks claimed that we would never get here this quickly, or that we wouldn’t be allowed to accomplish this goal. But we did it on our own, in our own way and with help from our community. And we’re just getting started.

Just as with the announcement of Rubinius running Rails, it's important to point out that full support of Rails still involves a lot of work for the IronRuby team.

In other news, shortly after Ruby 1.8.7 preview 4, the final version of Ruby 1.8.7 has been released. See our previous coverage of Ruby 1.8.7 preview versions for a closer look at new features and API changes.

Finally, the Rubinius community is looking into improving performance. William Morgan investigated the various options for inlining message sends ("method calls") on Rubinius. After posting a proposal on how to do inlining for various types of send sites and receivers, William posted a link to the git repository for a preliminary version of code. Cutting down the price of message sends is particularly important in Ruby, where just about anything happens with a message send. Inlining basically replaces the send site with the code of the called method, which gets rid of the overhead for doing the message send.

Rate this Article