From The Blog

RailsConf Europe Wednesday morning wrap-up – JRuby

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...

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.

Other Posts That Might Interest You

  1. Wednesday morning at RailsConf Europe
  2. RailsConf Europe 2007: Wednesday wrap-up
  3. JRuby 1.0.1 released along with plan for 1.1

Tags: 

  • Thanks for the clarification Ola, and great presentation too!
  • 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.
  • 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.
  • 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?
blog comments powered by Disqus