MagLev (software)

MagLev
Developer(s) GemTalk Systems
Initial release 2008 (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]
Website maglev.github.com

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

Architecture

Maglev runs inside an image like Smalltalk, offering transparent object persistence[2][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], which are scheduled in the VM as green threads.

Ruby Compatibility

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

  • GemStoneS 64 bit 3.1.x Documentation, July 3, 2012, retrieved July 29, 2012

References

  1. https://raw.github.com/MagLev/maglev/master/Licenses/README.txt
  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
  • Fernandez, Obie (May 30, 2008), MagLev is Gemstone/S for Ruby, Huge News, retrieved July 29, 2012
  • Taft, Darryl K. (June 6, 2008), "MagLev Rocks the Ruby House", eWeek, retrieved July 29, 2012
  • Grigorik, Ilya (January 15, 2010), Distributed Ruby with the MagLev VM, retrieved July 29, 2012
  • Schuster, Werner (November 15, 2011), "NoSQL OODB with Smalltalk-based Ruby VM: MagLev 1.0 Released", InfoQ, retrieved July 29, 2012


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.