Jump to content

MagLev (software)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Tom.Bot (talk | contribs) at 20:04, 5 April 2018 (Task 4: fix Category:Pages using deprecated image syntax; WP:GenFixes on, using AWB). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

MagLev
Developer(s)GemTalk Systems
Initial release2008; 16 years ago (2008)
Stable release
1.2.0 Alpha 4 / May 17, 2013 (2013-05-17)
Repository
Written inSmalltalk, Ruby
Operating systemCross-platform: Solaris, AIX, Linux, Mac OS X
PlatformGemStone/S
TypeRuby programming language interpreter
LicenseMIT, GPL, others[1]
Websitemaglev.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][failed verification][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

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

External links