エンタープライズ領域にもRuby普及か

独SAP、自社VMでRuby処理系のサポート追加へ

2009/04/01

 Java VM、.NET Frameworkに続いて、エンタープライズアプリケーションで使われてるもう1つのメジャーなバーチャルマシン(VM)、「ABAP VM」上でもRuby言語がサポートされる可能性が出てきた。

 独SAPは3月27日、同社のWebアプリケーションサーバで動くRubyの実験実装「Blue Rubyプロジェクト」について明らかにしている。ABAP(Advanced Business Application Programming)は、独SAPが提供するWebアプリケーションサーバ「SAP NetWeaver Application Server」は、J2EEと独自言語ABAPによるアプリケーション開発が可能なVMを備えている。

 Blue Rubyプロジェクトは、開発効率が高くアジャイル開発に適したRubyの世界と、すでに実績があり堅牢なSAPのWebアプリケーションサーバの世界をつなぐもの、という。DSL(Domain Specific Languages)を作成する環境も、Rubyによって実現できる。

Rubyソースコードを中間言語にコンパイル

 具体的にはRubyで書かれたコンパイラを使い、Rubyで書かれたソースコードをBRIL(Blue Ruby Intermediate Language)と呼ぶバイトコードに変換。これをBlue Ruby VMと呼ぶスタックマシン上で走らせる。このBlue Ruby VMは、ABAB VM上で動くプロセスの1つで、同じABAPのVM上に載ることから、Rubyアプリケーションから、ABAPのすべてのオブジェクトにアクセスできるほか、オブジェクトの生成や、それらオブジェクトへのメッセージの送信が可能という。逆に、ABAPアプリケーションからRubyのメソッドを呼ぶこともできる。Rubyのソースコードは、仮想ファイルシステムシステムを通してデータベースに保存される。また、RubyソースコードのBRILへのコンパイルは、セーブ時に毎回行われるため、起動時のオーバーヘッドはないという。

 BRILはBlue Ruby向けに作られたバイトコードで、動的言語の特徴を持っている。例えば文法エラーがあっても、コンパイル時にエラーを出すのではなく、実行時に例外を上げるといった違いがあるという。

blueruby01.png ABAPが提供するAPI(RFC)をRubyで利用する例。「1」という名称を持つビジネスパートナーを表示している
blueruby02.png Blue Ruby VMは、既存のVM環境の中で1つのプロセスとしてサンドボックス化されて動く
blueruby03.png Rubyのソースコードと対応するBRILの例(クリックで拡大)

 RubyからABAP、ABAPからRubyの双方向の呼び出しには制限もある。Ruby側からは、ABPA側のすべてにアクセスできるできるわけではなく、とりわけ、データベースアクセスに関しては、ブリッジと呼ばれるインターフェイスを通しABAPアプリケーションからのみ可能。これは、Ruby開発者が既存のプラットフォームを破壊しないようにするための設計で、こうしたコントロールがなければ、業務目的での利用は望めないだろうとしている。

 Blue Rubyは、2009年3月27日時点でRubyの互換性を検証するrubyspecテストに70%程度パスしているという。ただし、OSに依存するプロセス関連や、低レベルなネットワーク関連ライブラリはなく、I/O関連も仮想化ファイルシステムのライブラリとして実装されているなどの違いがある。

 このBlue Rubyプロジェクトは、動的言語をサポートするための汎用的なアプローチであるため、Blue Rubyがうまくいけば、今後はBlue PHP、Blue Pythonなども計画しているという。

 すでにマイクロソフトは.NET上のRuby実装としてIronRubyを提供しているほか、サン・マイクロシステムズはJava VM上のRuby実装としてJRubyの開発を支援している。SAPのRuby言語サポート追加が実現すれば、エンタープライズ用途へのRuby普及が加速するかもしれない。

関連リンク

(@IT 西村賢)

情報をお寄せください:

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

キャリアアップ

- PR -

注目のテーマ

ソリューションFLASH

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

国内アフィリエイト市場、仮想通貨やロボアドバイザー関連商材の成長で金融分野が拡大――矢野経済研究所調べ
矢野経済研究所の調査によると2019年度の国内アフィリエイト市場規模は前年度比8.7%増で...

アノニマスリードへの対応からインサイドセールスまで、MAツールを使った体制を構築――ONE COMPATH
20〜40代女性を中心に利用されている国内最大級の電子チラシサービス「Shufoo!」を運営す...

LINE広告、「ウォレット」タブでの広告配信を開始
LINEのさまざまなサービスのゲートウェイである「ウォレット」タブ上で運用型広告の配信...