Maglev Ruby

Ruby is often compared to Smalltalk; and I’m sure a bunch of folks have always wondered when someone would implement Ruby either on top of Smalltalk (or even in a similar manner to Smalltalk, aka Rubinius).

Avi Bryant wondered as such, and seems to have gotten a job out of it in producing Maglev Ruby (it is a video).

Maglev seems to be the combination of a Ruby VM implemented along with a distributed, concurrent object system to support the needs of Ruby on Rails.

I heard Avi speak at OSCON 06, and he seems to be a nice fellow; I’ll be interested to see how this pans out.

Strangely, I haven’t heard Maglev mentioned by anyone I know, perhaps Ruby VMs aren’t interesting.

ypsilon

ypsilon is the implementation of Scheme Programming Language, which conforms to the latest standard R6RS. It achieves a remarkably short GC pause time and the best performance in parallel execution as it implements “mostly concurrent garbage collection”, which is optimized for the multi-core CPU system.

If you are wondering “Why yet another Scheme implementation” you can find the answer here. To sum it up: they require real-time processing speed and can not use Boehm Garbage Collector because they run on arcade consoles or pinball machines, so, they had to start from scratch.

Addendum: 8/2/8

Ypsilon 0.9.6 is the bug fix release. It fixes all bugs reported and found in version 0.9.5. Ypsilon 0.9.6 has passed all 8886 tests in PLT R6RS test suite revision 11016.

(via C.L.S.)

Programming the Sony AIBO in Scheme

This post on the PLT discussion list shares some research into programming the Sony AIBO with Scheme, with this followup post providing additional details on a Scheme interpreter (STk) that provides a foreign function interface for the Sony AIBO C++ API.

Perhaps one day those STk libraries will be ported to PLT!

STk

STk is a free R4RS Scheme interpreter which can access the Tk graphical package. Concretely, it can be seen as the standard Tk package where Tcl has been replaced by a Scheme interpreter. STk embeds also an efficient CLOS like object oriented system, called STklos, which provides:

  • multiple inheritance
  • generic functions
  • multi-methods
  • a MOP (Meta Object Protocol)