RubyインタプリタをJavaで実装 - JRuby 0.8.2公開

    後藤大地  [2005/10/03]

    The JRuby Projectは29日(米国時間)、JRubyの最新版であるJRuby 0.8.2を公開した。JRubyはプログラミング言語Rubyに基づいたインタプリタのJavaによる実装である。JRuby 0.8系よりライセンスにCPL、GPL、LGPLのトリプルライセンスを採用し、オープンソースソフトウェアとして配布している。なお、JRubyを動作させるためにはJ2SE 1.4以上とApache Antが必要になる。

    JRubyのインタプリタはRuby 1.8.2仕様に準拠しており、実装は純粋なJavaで行われているためプラットフォームに依存せずに利用することができる。ほとんどのRubyクラスを組み込みで提供しており、Ruby内部からJavaクラスを定義することで相互サポートが実現されている。またBSF(Bean Scripting Framework)をサポートしているため、Javaコードに直接JRubyスクリプトを埋め込むことも可能になっている。

    JRuby 0.8.2ではいくつかのリファクタリングと多くのバクの修正がおこなわれており、主に次のような変更が加えられている。

    • RubyArray.javaにjava.util.Listを実装
    • RubyHash.javaに java.util.Mapを実装
    • ダイジェストの実装(sha1やsha2、md5のため)
    • 既知の(ルビースレッドを使用しての)並行処理問題の解決
    • その他のバグの修正

    JRubyでは、バージョン0.5.2よりJavaクラスをロードして使用するためのインターフェースを提供している。これによってJavaの豊富なクラスライブラリをJRubyスクリプトからも利用できるようになっている。JRubyインタプリタをJavaアプリケーションへ埋め込むことや、逆にJavaクラスをJRubyスクリプトにロードすることで、Javaプラットフォームとのシームレスな統合を可能にする。

    Javaで実装されたスクリプト言語には、JRubyの他にも独自APIのGroovyや、PerlベースのSleep、PythonベースのJython、TclベースのJaclなどが開発されている。

    The JRuby Projectでは今後、1カ月半から2カ月に一度のリリースを目指していくとしている。そして現在導入を予定している機能は、次期メジャーリリースの前に現行バージョンのマイナーリリースで序々に実装していき、今後取り入れる新機能については次期メジャーリリースで実装するとしている。

    関連記事

    関連サイト

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン