Navigation

ADS specializes in using Ruby on Rails to build advanced, scalable, database-backed web sites for organizations of all sizes. Find out more at our website.

Atlantic Dominion Solutions

Thank God for a continuous flow of coffee and multiple cafe’s on every block. I love Berlin! Things are as hectic today as they have been everyday.

The second half of this morning brought a talk on JRuby from Ola Bini, one of the JRuby development team. Ola’s presentation had a lot of material, so allow me to summarize:

What’s wrong with Ruby today?

  • Green threading
  • Partial Unicode support
  • Speed (slow)
  • Memory management, specifically the garbage collector
  • C language extensions
  • Politics (you want me to switch to what?)
  • Legacy (Java is everywhere)

What is JRuby?

  • Java implementation of Ruby
  • At version 1.0.1
  • Based on Ruby 1.8.5
  • 6 core developers, open source, close to 40 contributors
  • Commercial backing from Sun and ThoughtWorks

What can JRuby do?

  • All ?��Ǩ?�pure Ruby?��Ǩ�� code works (with some caveats)
  • Rake and rubyGems run well
  • Rails works almost perfectly

What can’t JRuby do?

  • Deterministic threading
  • Continuations
  • Some file system operations
  • Forking, and other POSIX ilk

So, how does JRuby solve the stated problems with Ruby?

  • Native threading
  • Scaling across processors and cores
  • Concurrent execution
  • Thread scheduling
  • No politics - just another Java library

What challenges does JRuby face?

  • Performance of unit tests
  • It’s not “free” to run both JRuby and MRI (Matz’s interpreter)
  • Start-up time (especially with Rails)
  • JRuby regular expressions have different performance characteristics
  • YAML isn’t stable yet
  • High memory consumption (but still less than Mongrel)
  • Good replacement for RMagick is needed
  • Lack of documentation

It was a great session with a lot of information. Hopefully Ola will have his slides posted to the RailsConf Europe site.

Share this post

Other posts you may enjoy

You can leave a response, or trackback from your own site.

Print This Post Print This Post

4 Responses to “RailsConf Europe Wednesday morning wrap-up - JRuby”

On September 19th, 2007 at 2:08 pm Gavin Stark said:

Thanks for providing such good summaries of what is going on at RailsConf Europe.

What exactly is meant by ‘It?¢‚Ǩ‚Ñ¢s not ?¢‚Ǩ?ìfree?¢‚Ǩ¬ù to run both JRuby and MRI (Matz?¢‚Ǩ‚Ñ¢s interpreter)’ “free” in what way? Did the JRuby team give any feedback on the next set of milestones and goal dates?

On September 19th, 2007 at 2:38 pm Robert Dempsey said:

Gavin,

Although Ola didn’t expand on this I believe he meant that there is overhead in running both on the same box. As for milestones and goals, nothing specific was told to us.

On September 20th, 2007 at 5:41 am Ola Bini said:

I could probably have been a little more explicit about that. What I meant is that it’s not free to develop an application that runs on both MRI and JRuby. There is a cost in supporting both platforms, since there are a few places where you need to code specific code for MRI or JRuby. Hope that clears it up.

On September 20th, 2007 at 1:36 pm Robert Dempsey said:

Thanks for the clarification Ola, and great presentation too!

Leave a Reply