LLVMを採用しバイナリの作成も可能になった「MacRuby 0.5」が登場
米AppleのMacRubyプロジェクトは1月31日、Mac OS X向けのRuby実行環境「MacRuby 0.5」を発表した。プロジェクトのWebサイトよりダウンロードできる。
MacRubyは「Ruby 1.9」にMac OS XのObjective-Cランタイムを利用する拡張を加えたもので、Mac OS XのObjective-Cランタイムや各種フレームワークを直接呼び出せるのが特徴。また、たとえばガベージコレクションではRuby独自のガベージコレクション機構ではなくObjective-Cのものを利用するなど、Mac OS Xネイティブの機能を利用することによるパフォーマンス向上も図られている。そのほか、Objective-Cで使われるキー付きの引数をサポートするなど、言語機能自体についても拡張されている。
MacRuby 0.5では、実行エンジンとしてRuby 1.9のYARVではなく「LLVM(Low Level Virtual Machine)」を採用、パフォーマンス向上を図っている。実行モードとして実行時コンパイル(JITコンパイル)と事前コンパイル(AOTコンパイル)の2つが利用でき、ネイティブコードへのコンパイルにも対応する。複数のソースコードから単一の実行用バイナリを出力することも可能。また、LLVMの採用によって並列処理のパフォーマンス改善も期待できるとのこと。Mac OS X 10.6 Snow Leopardの新機能である並列処理API「Grand Central Dispatch」(GCD)にも対応する。
そのほか、「HotCocoa」のサポートも特徴となる。HotCocoaは「Cocoa」やMac OS X向けの各種フレームワークをRuby向けにラップするライブラリ群。以前はMacRubyプロジェクトとして開発が進んでいたが、現在ではMacRubyから切り離されてGitHub上で開発が進められている。HotCocoaはgemとしてMacRubyのパッケージインストーラーに含まれており、利用にはRubyGemsが必要になる。
MacRuby.org
http://www.macruby.org/
「MacRuby 0.5」ダウンロード
http://www.macruby.org/downloads.html