 |

|
Ruby 1.9.1を試す! |
先取り!Ruby 1.9.1
著者:東京大学 笹田 耕一 2007/9/28
|
|
|
1 2 3 次のページ
|
 |
2007年クリスマスにRuby 1.9.1をリリース
|
去る2007年8月4日に「Lightweight Language Spirits(以下、LL魂)」というイベントがありました。そのイベントの1コーナーであるLanguage Updateというコーナーで、スクリプト言語Rubyの親であるまつもとゆきひろ氏、および筆者が次期Rubyの予定を語りました。当日の資料は以下のURLからダウンロード可能です。
まつもと氏の発表をまとめると、今度のRubyのリリースは次のようなものになるそうです。
- 2007年クリスマスにRuby 2.0をリリース
- 仮想マシンYARVが取り込まれ、従来より2〜500倍高速化
- M17N(多言語化)標準搭載
- より網羅的なテスト、明確な仕様の提示
- ネイティブスレッドを利用した並列実行サポート
- Multi-VMによる独立した名前空間
- 継続、Fiberのサポート
- Lazy Collectionによる高効率外部イテレータ
- 新しいパッケージ機構の導入
- ネームスペース管理のための機構の導入
- キーワード引数の導入
- 「もしかして」機能など、自動エラー修正
表1:Ruby 2.0の予定(仮)
なかなかアグレッシブな変更、追加機能がたくさんあり、夢ふくらみます。が、これらの新機能の大部分は「嘘」発表でして、まつもと氏の後に続いた筆者が、嘘の部分を指摘していく、という発表になりました。
というわけで、嘘ではない、次の「Ruby 1.9.1」のリリースは以下のようになる予定です。
- 2007年クリスマスにRuby 1.9.1をリリース
- 仮想マシンYARVが取り込まれ、従来より基本性能で5倍、通常アプリケーションでも1.x倍の高速化
- M17N(多言語化)標準搭載
- ネイティブスレッドを用いたRubyスレッド(ただし並列化は行わない)
- 継続、Fiberのサポート
- 独自のI/Oバッファリング機構とノンブロッキングI/O機構の改善
- データ構造の改善などによるメモリ効率
- 新しいライブラリの追加
- 新しいパッケージ機構の導入(RubyGems)
- 若干の文法の変更
- より多くのテストの追加
表2:Ruby 1.9(実際の予定)
次期Ruby処理系であるRuby 1.9.1は、今年のクリスマスにリリースされる予定です。
残念ながら、文法の拡張になるキーワード引数やネームスペース、実装の拡張であるMulti-VM対応などは今後に見送られることになりました。新しい仕様については開発者で議論をしたのですが、なかなか合意が得られなかったため、次回以降のリリースになりそうです。新しい文法についてはRuby 2.0以降、新しい機能の追加についてはRuby 1.9.2以降にて追加される予定と思われます。
Ruby 1.9では、いくつかの文法の追加・変更、ライブラリの追加・修正などが入る予定です。例えば、文法では後置引数の追加などが行われました。仕様変更自体は、あまり普通のRubyプログラミングでは触れないところが多いので、影響は少ないのではないかと思います(そう期待しています)。
これらの修正点はMauricio Fernandez氏による「Changes in Ruby 1.9」という記事に詳しくまとめられています(ちなみに、Fernandez氏は日本が好きなんだそうで、それっぽいサイトデザインになってますね)。
以降、本記事ではRuby 1.9.1の大きな特長である仮想マシンの導入、およびM17N対応について簡単に紹介し、実際に開発版であるRuby 1.9.0を試す方法を解説していきます。
|
1 2 3 次のページ
|

|
|

|
著者プロフィール
東京大学大学院情報理工学系研究科創造情報学専攻特任助教 笹田 耕一
趣味ではじめたはずのRubyのVM開発が、いつの間にか本職に。2006年に東京農工大学博士後期課程を退学して現職。言語処理系やOS、並列システムなどの研究に従事。日本Rubyの会理事として、RubyistMagazine(http://jp.rubyist.net/magazine/)の編集なども。
|
|
|
|