Rubinius Ruby language variant gets an upgrade

Improvements offered in debugging, memory usage, and performance

Rubinius, an implementation of the Ruby programming language featuring enhancements for JIT (Just In Time) compilation and garbage collection, is being upgraded Friday, gaining improvements in debugging, memory usage, and performance.

Version 1.1 of Rubinius was released by Rubinius developers and is accessible at the Rubinius Web page. Rubinius is an open source project.

[ See InfoWorld's coverage of this week's Java EE vs. Spring debate held at the JavaOne conference. | Keep up with app dev issues and trends with InfoWorld's Fatal Exception blog and Developer World newsletter. ]

"We're really fast under unique workloads" such as numerical performance applications, said Evan Phoenix, lead Rubinius developer at Rubinius at Engine Yard, which also employs lead developers for JRuby, a version of Ruby for the Java Virtual Machine.

"Rubinius is much easier to use in terms of its startup [than JRuby]," Phoenix said in an interview on Friday. "It's much more lightweight than JRuby can be. We've got better memory utilization overall."

Written in C++, the Rubinius bytecode virtual machine incorporates LLVM (Low Level Virtual Machine) bytecode to machine code. The bytecode compiler and most core classes are written in pure Ruby.

Features of 1.1 include a debugger API and reference CLI (Command Line Interface).  Although a debugger is provided, developers also can write their own debugger with version 1.1. "When we first did the first release, we didn't have a good debugger story for people to use," Phoenix said. This situation is corrected in Rubinius 1.1.

Developers can integrate their debuggers with IDEs. Aslo, a heap dump memory debugging tool is featured for writing out contents of a program, enabling analysis for bugs.

Performance improvements are featured, such as boosts involving for the Array#pack and String#unpack methods for converting data. "We spent a lot of time on this release improving those," said Phoenix.

Memory usage is improved via instance variable packing. Developers to do not have to declare how classes are going to work for memory purposes.

JIT performance is improved via block inlining. "Our JIT is able to see through a lot of the complicated semantics of Ruby and generate fast machine code for high-level concepts," Phoenix said.

A query agent is featured as well for getting low-level information out of the virtual machine.

Rubinius supports the Ruby on Rails Web development framework, Phoenix said.

This article, "Rubinius Ruby language variant gets an upgrade," was originally published at InfoWorld.com. Follow the latest developments in business technology news and get a digest of the key stories each day in the InfoWorld Daily newsletter.

Read more about developer world in InfoWorld's Developer World Channel.

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection

Tags ruby on railsapplication developmentLanguages and standardsenginDeveloper Worldsoftware

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Paul Krill

InfoWorld
Show Comments

Cool Tech

Breitling Superocean Heritage Chronographe 44

Learn more >

SanDisk MicroSDXC™ for Nintendo® Switch™

Learn more >

Toys for Boys

Family Friendly

Panasonic 4K UHD Blu-Ray Player and Full HD Recorder with Netflix - UBT1GL-K

Learn more >

Stocking Stuffer

Razer DeathAdder Expert Ergonomic Gaming Mouse

Learn more >

Christmas Gift Guide

Click for more ›

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Walid Mikhael

Brother QL-820NWB Professional Label Printer

It’s easy to set up, it’s compact and quiet when printing and to top if off, the print quality is excellent. This is hands down the best printer I’ve used for printing labels.

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Ratchada Dunn

Sharp PN-40TC1 Huddle Board

The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.

George Khoury

Sharp PN-40TC1 Huddle Board

The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic

David Coyle

Brother PocketJet PJ-773 A4 Portable Thermal Printer

I rate the printer as a 5 out of 5 stars as it has been able to fit seamlessly into my busy and mobile lifestyle.

Featured Content

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?