Ryan Davis

Compiling Ruby: From Text to Bytecode

The business of executing Ruby code is booming; with so many Ruby environments in development, there are just as many different ways of actually running code. We’ve been hard at work in the world of Rubinius, and over the last few months we’ve been focused on a new way of executing Ruby code by converting it to machine code at run-time—a Just-In-Time compiler.

In this post, I’ll walk you through how Ruby code begins as text and is converted into bytecode. In a follow up post, I’ll go from bytecode to the machine code itself.

Hoe 2, Electric Boogaloo

What is Hoe?

Hoe is a library that provides extensions to rake to automate every step of the development process from genesis to release. It provides project creation, configuration, and a multitude of tasks including project maintenance, testing, analysis, and release. We found rake to be an incredible vehicle for functionality in the abstract, but decidedly lacking in concrete functionality. We filled in all the blanks we could through a "hoe-spec":

coming soon...

1.9 compatibility:

I've been focusing on 1.9 compatibility lately and while most of my stuff was good to go, there were still some lingering issues here and there. Check it:

Charlie Nutter on JRuby

It's taking a while to go through all the excellent talk proposals and try to fit in as many as possible into the schedule. In the mean time, I had a quick chat with Charlie Nutter, who will be speaking at the conference. Charlie is co-lead on the JRuby project.

Emacs? Emacs.

And with my handheld portable all-purpose lightweight doohickey I fuse thoughts and try not to be too picky. —Buck65

I’m personally offended that you enjoy the software you work with ;)—al3x

Update: Full 60-minute screencast now available at PeepCode!

RubyConf stuff

Well. RubyConf was two weeks ago now and I still haven’t completely wrapped my head around it. It was a different experience this year than last (understanding that last year was my first RubyConf), and I’m not sure whether I liked it better. I would have preferred a single track, although I completely acknowledge the reasons why multitrack made sense… I just didn’t like having to make decisions between two talks I really wanted to see, which happened at pretty much every junction.

Onward Hoe!

This is just a quick followup to latest release notice.

I used Hoe to release the paginator files… and I have to say that’s the easiest, least painful release I’ve ever done. As Ryan said at the conference, it makes it easy enough to release more often, and that is spectacular!

Syndicate content