MagLev (software)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
MagLev logo.gif
Developer(s) GemTalk Systems
Initial release 2008; 10 years ago (2008)
Stable release
1.2.0 Alpha 4 / May 17, 2013 (2013-05-17)
Repository Edit this at Wikidata
Written in Smalltalk, Ruby
Operating system Cross-platform: Solaris, AIX, Linux, Mac OS X
Platform GemStone/S
Type Ruby programming language interpreter
License MIT, GPL, others[1]

MagLev is an alternative implementation of the Ruby programming language built on the GemStone/S virtual machine from GemTalk Systems.


Maglev runs inside an image like Smalltalk, offering transparent object persistence[2][not in citation given][3] to Ruby objects and classes. Object persistence is based on ACID transactions that allow multiple running instances to see a shared object graph. Maglev uses a process-based concurrency model, mapping Ruby threads to Smalltalk Processes[4][self-published source?], which are scheduled in the VM as green threads.

Ruby Compatibility[edit]

Maglev targets Ruby 1.8.7 and runs a significant number of RubySpec. It supports several C extensions including Nokogiri, JSON and bcrypt.

Gemstone/S Resources[edit]


  1. ^
  2. ^ "Programming Guide for GemStone/S 64 Bit Version 1" (PDF), VMware, July 2012, retrieved July 29, 2012 
  3. ^ "MagLev – Object Persistence with Ruby and Smalltalk" (PDF), Bachelor thesis, Hasso Plattner Institute, July 1, 2013, retrieved February 22, 2014 
  4. ^ Phoenix, Evan (October 14, 2011), "Ruby, Concurrency, and You", Engine Yard Blog, retrieved July 29, 2012 

External links[edit]