RubyによるRuby実装「Rubinius 1.1」がリリース、性能がさらに向上
Ruby実装の「Rubinius」開発チームは9月23日、「Rubinius 1.1」をリリースした。2010年5月に公開された1.0から多数の機能追加やパフォーマンス向上が行われている。
Rubiniusは、Smalltalk-80の概念や仮想マシン実装を参考にしたRuby実装。バイトコードコンパイラなど、Rubinusの大部分はRubyで実装されているのが特徴。また、バイトコードを実行する仮想マシンはC++で実装され、バイトコードからマシンコードへのコンパイルにはLLVMを使用。これらにより、高速に動作するという。同プロジェクトはJRubyなどのプロジェクトを抱える米Engin Yardの支援を受けている。
Rubinius 1.1ではJITコンパイラを強化、JIT内でブロックインライニングが可能となり性能を強化した。また、GIL(Global Interpreter Lock)のアルゴリズムが変更による信頼性の改善や、Debugger API、レファレンスのCLI(Command Line Interface)デバッガも実装された。
dbm、sdbm、gdbm向け拡張も追加されたほか、Array#packとString#unpackを書き直すことで性能が改善された。ガベージコレクタ、FFIの互換性なども改善されている。
ソースコードやMac OS X 10.5/10.6向けのバイナリインストーラーなどがプロジェクトのWebサイトで公開されている。ライセンスはBSD License。
Rubinius
http://rubini.us/
米Engine Yard
http://www.engineyard.com/