JRuby - Java powered Ruby implementation

10月22日(現地時間)、JRubyの最新版となる「JRuby 1.7.0」が公開された。JRubyはJavaで開発されたRuby実行環境。インタプリタとしてもコンパイラとしても動作するという特徴をもっている。JRuby 1.7.0ではRuby 1.9.3に対応し、パフォーマンスの改善や多くのRuby 1.9系の互換性の修正が実施されている。

JRuby 1.7.0は2011年3月に公開されたJRuby 1.6.0以来のメジャーアップデートバージョン。JRuby 1.7.0における主な特徴は次のとおり。

  • Ruby 1.9.3互換の実現
  • Rubyの標準ライブラリをRuby 1.9.3p286に更新
  • 多数の1.9.xとの互換性を修正
  • パフォーマンス及び並行性の改善
  • Java 5のサポートを終了(動作にはJava 6以上が必須に)
  • 既知の1.9エンコーディング問題をすべて解決
  • Java Embedding/integrationの改善及び修正を実施
  • Solaris、ARM Linuxなどのネイティブ機能のサポートを強化
  • Rubygems 1.8.24にアップデート
  • Rake 0.9.2.2にアップデート

また、JRuby 1.7よりJVM上で動的言語の実装をサポートする"invokedynamic"への対応が追加されている。ただし、Java 7ではこの機能は標準で無効になっているため、使用するには有効にする必要がある。有効にする手順はドキュメントとして提供されている。