Ruby プログラムを .NET Framework 2.0 上で動作する DLL/EXE に変換する
Ruby.NET Compiler ソフトウェアがあります。気になったのでちょっと調べてみました。
本記事は、Gardens Point Ruby.NET Compiler Beta Release(February 2007)に対応しています。
■ 知りたいこと
・ 既存の Ruby ライブラリが使えるか
・ 既存の .NET ライブラリが使えるか
・ 既存のアプリケーションに組み込めるか
・ ライセンスは使いやすいか
・ 安定度はどれくらいか
・ 開発は活発か
■ 調査結果
・ 既存の Ruby ライブラリが使えるか
実装していないようです。実装予定があるかどうかも不明です。
・ 既存の .NET ライブラリが使えるか
次のリリースで対応する(したい)ようです。
・ 既存のアプリに組み込めるか
ちゃんとコードは追っていませんが、高い頻度で動的に書き換えるのはパフォーマンス的にネックになりそう(※)ですが、それほどでなければ大丈夫そうです。
※ コンパイラであるためです。ただ、IronPython もコンパイル可能でわりと動的に書き換えてもそれほどパフォーマンスでネックにはならないので、このツールもこなれてくれば大丈夫ではないかなと楽観しています。IronPython を組み込む際は、ランタイムのロード時間のほうが問題になりました(IronPython というよりは .NET 系全般の問題)。ゲームとかリアルタイム性が必要なアプリの場合は、ランタイムを呼び出すタイミングをコントロールする必要があります。
(IronPython では、WinXP/P4 2.8GHz/1GB の PC で秒間 50 フレームで HelloWorld をパースさせたら CPU 使用率が 100% になった <- あたりまえ^^;)
コンパイラなので、既存のアプリに組み込むことは想定に入っていないのか、プログラミングインタフェースは、まだ整理されていないように見えました。IronPython のように 1 行で組み込むというわけにはいかないという印象を受けました。
・ ライセンスは使いやすいか
BSD ライセンスに近い印象を受けました。
このページの Licensing という箇所を参照してください。以下の内容が書かれています。というわけで結構使いやすいのではないかと思っています。
続きを読む