RubyForge上で公開へ

マイクロソフト、Ruby言語インプリ「IronRuby」をリリース

2007/07/24

 マイクロソフトは、Ruby言語の同社版インプリメンテーションに対してコミュニティからフィードバックを受け入れる準備が整ったようだ。

 マイクロソフトは7月23日、オレゴン州ポートランドで開催中のO'Reilly Open Source Conventionにおいて、「IronRuby」(Ruby言語のマイクロソフト版インプリメンテーション)のコア機能セットをRubyForge上で提供し、コミュニティのフィードバックを受け付けると発表した。RubyForgeは、プログラミング言語のRubyに関連したプロジェクトを対象とした協調型ソフトウェア開発管理システム。

 RubyCLRの開発者でマイクロソフトのDLR(Dynamic Runtime Language)チームのメンバーであるジョン・ラム氏は、7月23日付のブログ記事で、同チームはこの2カ月間、IronRubyの最初のソースコードをリリースする準備を進めてきたと述べている。

 「IronRubyのソースコードの最初のリリースを本日発表できるのを喜ばしく思っている。IronRubyは、Microsoft Permissive Licenseで規定された非常に寛大な条件の下でライセンスされる。また、われわれはIronRubyライブラリへのソースコードの提供も受け入れる予定だ。現時点では、まだ多くの関連作業が残されているが、8月末までにはRubyForge上でIronRubyを公開するつもりだ」(ラム氏)

 IronRubyはDLR上に実装される。DLRはCLR(Common Language Runtime)2.0上で動作するサービス群で、.NET Framework上で動的言語を実行するのに利用される。IronRubyは.NET Frameworkに完全に統合され、.NET Frameworkの全バージョンを通じてWindowsデスクトップ/サーバプラットフォーム上で動作するほか、Silverlight 1.1を通じてクロスプラットフォームにも対応する予定だ。

 ワシントン州レドモンドに本社を置くマイクロソフトは2007年4月に、ラスベガスで開催された同社主催の「MIX」カンファレンスで IronRubyとDLRを初めて紹介した。同社はそのとき、コミュニティ開発サイトのMicrosoft CodePlex上でDLRとIronPythonをMicrosoft Permissive Licenseの下でリリースする予定だと発表した。同社によると、IronRubyの発表は、ユーザーおよび開発者コミュニティ全体のニーズに対応したさまざまな革新的な技術を提供するという同社のコミット姿勢を示すものだという。

 ラム氏によると、マイクロソフトではIronRubyライブラリへのコード提供だけを受け入れ、コンパイラ全体に対するコード提供は受け付けない方針だ。「これは、IronRubyがDynamic Language Runtime上に実装されており、現時点ではDLRへのパブリックインターフェイスが完全なものではないからだ。DLRは将来、CLRの一部として出荷されるため、少なくとも当初はIronRubyコンパイラへのコード提供を受け入れることはできない。しかしDLRが成熟し、パブリックインターフェイスをフルサポートした1.0の段階になれば、IronRubyプロジェクトのすべての部分を完全に公開し、外部からのコード提供を受け入れるつもりだ」と同氏は話す。

 ラム氏のチームはIronRubyの最新リリースで「かなり優れたパフォーマンス」を実現したという。「われわれはDynamic SitesというDLR機能を利用している。これは、アダプティブ型コールサイトメソッドキャッシングのインプリメンテーションだ」(同氏)

原文へのリンク

(eWEEK Darryl K. Taft)

情報をお寄せください:

Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ

- PR -

注目のテーマ

ソリューションFLASH

「ITmedia マーケティング」新着記事

「サイト内検索」&「ライブチャット」売れ筋TOP5(2024年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。

コカ・コーラ流 生成AIをマーケティングに活用する方法(無料eBook)
生成AIがこれからのマーケティングをどう変えるのかは誰もが注目するテーマ。世界最先端...

DIORが本気で挑むラグジュアリー体験としてのAR
広告プラットフォームのTeadsがAR(拡張現実)とAI(人工知能)技術を応用したサービスを...