JRuby 1.6, the latest version of the Ruby language variant for the Java Virtual Machine, is due in a release candidate stage Tuesday and is being called the biggest release of the platform ever.
Featured in the upgrade is compatibility with the 1.9 version of the Ruby language, which offers Unicode capabilities for internationalisation. "Probably the biggest benefit [of Unicode] is when you're on the Internet you're dealing with lots of text encodings, and it was very difficult to do that cleanly with Ruby 1.8," said Charles Nutter, a JRuby project leader at Engine Yard.
"Ruby 1.9 added a large number of language features [in] the past two years, and this is us finally catching up with it," said Nutter. He described JRuby 1.6 as "the biggest JRuby release we've ever done."
Version 1.6, which is open source and is downloadable from the JRuby website, also offers improved performance. "Like previous releases, every version of JRuby is going to run Ruby code just a bit faster than the previous one," Nutter said. He estimated performance has been boosted by five to 10 percent.
The release candidate would be the last chance to kick the tires on the upgrade before a general release is made available. General availability of the final release of 1.6 will depend on user feedback. With JRuby, developers can leverage their Ruby programming skills while deploying applications wherever the JVM will run.
Windows support has been improved in JRuby 1.6, with the JRuby team ensuring key applications such as the Ruby on Rails web framework run as well on Windows as on a Unix system. Performance and compatibility have been improved as well. "We made another large push to ensure JRuby runs as well as possible on Windows," Nutter said. "[JRuby is] actually considered to be the best Ruby on Windows right now."
JRuby 1.6 offers compatibility for WIN32OLE, enabling the use of Ruby to script components on Windows. Components could include business applications requiring an OLE (Object Linking and Embedding) interface.
"JRuby is great because it allows you to develop rapidly using the Ruby syntax and deploy to a stable environment, which is powered by the JVM," said JRuby user Dylan Stamat, CTO of technology consulting firm ELC Technologies. The company currently is using JRuby to build a large electronic health records system.
Existing applications can be upgraded to JRuby 1.6 simply by installing the new version. The JVM, Nutter said, makes it easier to port Ruby applications to different platforms. Developers also can build applications for the Android mobile platform via JRuby and Android's JVM.
Looking ahead to the next version, JRuby is expected to focus on performance to bring it on par with Java speeds. "Like most dynamic languages on the JVM, it's definitely slower than Java," Nutter said. Developers hope to release JRuby 1.7 in late spring or this summer. JRuby 1.0 was released in 2007.