Strongtalk VM for Ruby?

RubyConf 2006 wrapped up last weekend, with one of the most debated topics being Ruby 2.0 and the need for a new virtual machine. Adding fuel to the fire was the announcement that Ruby 2.0 would eliminate (temporarily?) support for continuations and green threads.

This announcement came down from the top, by both Matz and Koichi. Matz, short for Yukihiro Matsumoto, is the creator of the Ruby language; Koichi is the developer of YARV, the “official” virtual machine for Ruby 2.0.

Making the situation more interesting is the development of two other interpreters, JRuby and RubyCLR. JRuby targets the Java VM, and is developed by Charles Oliver Nutter and Thomas Enebo, both of whom have recently been hired by Sun. RubyCLR, of course, targets the Common Language Runtime that powers .NET. It is developed by John Lam, who has been hired by Microsoft, not wanting to be left behind.

Chris Petrilli, provides a rundown of the current situation. And, while these VM efforts are admirable, Patrick Logan calls it like it is:

Seriously, Ruby is in dire need of a decent implementation. The JVM and the CLR are fine for what they are, old legacy. But Ruby needs its own *modern* implementation.

That leads me to Strongtalk. Strongtalk is a virtual machine for Smalltalk that adds on optional static type system, from which it derives its name. It was developed by a company named Animorphic, which was acquired by Sun, who put its engineers to work on the JVM.

Sun recently released the Strongtalk code under an open source, BSD-style license. Admittedly, the code has not been actively developed for about 10 years. Yet the research behind Strongtalk is state-of-the-art as far as dynamic, interpreted languages are concerned.

Having a Strongtalk-powered VM for Ruby would have a number of benefits. The most important benefit would be giving Ruby the advanced, high-performance VM that it desperately needs. Also not to be ignored is the the need a pure open source implementation, not mired by the questionable licenses that currently hinder both Java and the CLR. And, in my own idealistic programming world, it would unify Smalltalk and Ruby under a common runtime.


Lonna Hanson
October 31, 2006 at 11:35 AM

I enjoyed reading your comments.

Post a comment