- Rubinius
-
Rubinius Erscheinungsjahr: 2006 Entwickler: Evan Phoenix, Brian Ford und andere Aktuelle Version: 1.2.0 (21. Dezember 2010) Einflüsse: Smalltalk, Erlang, Haskell Betriebssystem: Plattformunabhängig Lizenz: BSD-Lizenz rubini.us Rubinius ist eine alternative Implementierung der Programmiersprache Ruby. Ziel der Implementierung ist es so viel wie möglich in Ruby selbst zu schreiben und dabei speichereffizienter als die offizielle Ruby-Implementierung zu sein. Rubinius orientiert sich stark an der Referenzimplementierung der Programmiersprache Smalltalk-80.[1]
Abgesehen von der Virtuellen Maschine ist Rubinius gänzlich in Ruby geschrieben. Dies umfasst auch etwa den Parser, den Compiler oder Vererbung. Um dies zu realisieren setzt man auf Bootstrapping: Man muss den Compiler ausführen, damit sich dieser selbst in Bytecode umwandeln kann. Dies geschieht entweder von einer bereits kompilierten Rubinius-Version, oder einer anderen Ruby-Implementierung aus.
Seit Version 0.9 ist Rubinius in der Lage Ruby On Rails auszuführen.[2] Die aktuelle Version wird als kompatibel zu Ruby 1.8.7 angesehen, was durch das RubySpec Projekt sichergestellt werden soll.[3] Experimenteller Support für 1.9 ist verfügbar. Die sich aktuell in Entwicklung befindende Version 1.0 hat derzeit mehrere experimentelle Virtuelle Maschinen, etwa für die Integration der Low Level Virtual Machine, mit dem Ziel die Performance zu verbessern.[4]
Mehrere Entwickler, darunter Sasada Koichi, der Entwickler von YARV (die VM von Ruby 1.9), sind der Ansicht, dass Rubinius auf lange Sicht das größte Optimierungspotential bereithält.[5] Bereits jetzt führt Rubinius reinen Rubycode schneller aus als andere Implementierungen.[6][7] Hier sei aber anzumerken, das andere Implementierungen dies kompensieren, indem sie den Kern der Sprache nicht in Ruby, sondern in einer anderen Sprache, zum Beispiel C oder Java, implementieren und damit im Moment bessere Resultate erzielen.[8]
Die Entwicklung an Rubinius wird maßgeblich von Engine Yard vorangetrieben, die zur Zeit zwei Entwickler vollzeit daran arbeiten lassen.
Siehe auch
Quellen
- ↑ Goldberg, Adele: "Smalltalk-80: The Language and its Implementation", Addison-Wesley, ISBN 978-0201113716, http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook.pdf
- ↑ http://blog.fallingsnow.net/2008/05/17/rails-on-rubinius/
- ↑ http://rubyspec.org/
- ↑ http://blog.fallingsnow.net/2008/09/05/rubinius-status/
- ↑ http://rubyconf2008.confreaks.com/future-of-rubyvm.html
- ↑ http://rubyconf2008.confreaks.com/rubinius.html
- ↑ http://blog.headius.com/2008/10/using-rubiniuss-kernel-in-jruby.html
- ↑ http://antoniocangiano.com/2008/12/09/the-great-ruby-shootout-december-2008/
Weblinks
- Die offizielle Website
- Ein Vortrag über Rubinius auf der RubyConf 2007
- Rubinius auf GitHub
Kategorie:- Programmiersprache Ruby
Wikimedia Foundation.