| 原作者 | Microsoft 動的言語ランタイムチーム |
|---|---|
| 開発者 | .NET ファウンデーション |
| 初回リリース | 2007年8月31日 |
| 安定版リリース | IronRuby 1.0 / 2010年4月12日 |
| プレビューリリース | IronRuby 1.1.3 / 2011年3月13日 |
| リポジトリ | github.com/IronLanguages/ironruby |
| 書かれた | C# |
| オペレーティング·システム | Windows、Linux、macOS |
| プラットフォーム | .NET フレームワーク、モノ |
| タイプ | Rubyプログラミング言語コンパイラ[1] [2] |
| ライセンス | Apache ライセンス 2.0 |
| Webサイト | 翻訳元 |
IronRuby は、Microsoft .NET Framework を対象としたRuby プログラミング言語の実装です。これは、動的言語に動的な型付けや動的メソッド ディスパッチなどを提供する 共通言語インフラストラクチャ上で実行されるライブラリである動的言語ランタイム(DLR) 上に実装されています。
このプロジェクトは現在非アクティブであり、IronRuby の最終リリース (バージョン 1.1.3) は 2011 年 3 月です。
歴史
2007年4月30日、MIX 2007でマイクロソフトはIronRubyを発表しました。これはウィルコ・バウワーのIronRubyプロジェクトと同じ名前を、許可を得て使用しています。[3] OSCON 2007で一般公開される予定でした。[4]
2007 年 7 月 23 日、約束通り、ジョン・ラムと DLR 設計チームは OSCON で IronRuby コンパイラのプレアルファ版を発表しました。また、IronRuby をオープンソース コミュニティにさらに統合するための短期的なタイムラインも発表しました。[5]
2007 年 8 月 31 日、ジョン・ラムと DLR 設計チームは、プレアルファ段階のコードを RubyForge でリリースしました。[6]ソースコードは、Microsoft コアチームによって定期的に更新され続けています (ただし、チェックインごとに更新されているわけではありません)。また、チームは、少なくとも現時点では、コアDynamic Language Runtimeライブラリに対するコミュニティからの貢献は受け入れていません。 [7]
2008年7月24日、IronRubyチームはOSCON 2008に合わせて最初のバイナリアルファバージョンをリリースしました。 [8] 2008年11月19日には2番目のアルファバージョンをリリースしました。
チームはIronRuby上でRailsをサポートするために積極的に取り組みました。[9] [10]いくつかのRailsの機能テストが実行され始めましたが、本番環境でRailsを実行できるようにするにはまだ多くの作業が必要でした。[11]
2009年5月21日、RailsConf 2009に合わせてバージョン0.5がリリースされました。このバージョンでは、IronRubyはいくつかのRailsアプリケーションを実行できましたが、まだ本番環境では実行できませんでした。[12]
バージョン0.9はOSCON 2009で発表されました。[13]このバージョンではパフォーマンスが向上しました。[14]バージョン1.0 RC1は2009年11月20日に利用可能になりました。 [15]
バージョン 1.0 は、2010 年 4 月 12 日に 2 つの異なるバージョンで利用可能になりました。
- 推奨されるのは、.NET 4.0 上で実行されるものです。
- .NET 2.0上で動作する、機能が制限されたバージョン。このバージョンはMonoと互換性のある唯一のバージョンでした。[16]
IronRubyチームは、Ruby 1.8.6を1.0ポイントリリースのみサポートし、1.9バージョンを今後の1.xリリースのみサポートし、Ruby 1.8.7のサポートをスキップする予定でした。[17] [18]
2010年7月、マイクロソフトはIronRubyコアチームの残り2人のメンバーのうちの1人であるジミー・スケメンティを解雇し、プロジェクトへの資金提供を停止した。[19] [20] 2010年10月、マイクロソフトはIronプロジェクト(IronRubyとIronPython)を「外部」プロジェクトに変更し、「マイクロソフトの関与やマイクロソフト従業員による支援なしにコミュニティメンバーが貢献できるようにする」と発表した。[21]
IronRubyの最後のリリースは2011年3月13日のバージョン1.1.3でした。[22]
建築
モノラルサポート
IronRubyはMicrosoft Common Language Runtime (CLR)と同様にMono上でも動作する可能性があるが[23] 、IronRubyチームはWindows上のCLRでのみテストを行っているため[24]、ビルドによってはMono上でビルドできない可能性がある。[25] [26] [27]
.NET 相互運用性
多くのRubyクラスは.NETクラスではないため、IronRubyクラスと通常の.NET Frameworkクラスとの相互運用性は非常に限られています。 [28]ただし、 .NET 4.0での動的言語のサポートが改善されると、将来的には相互運用性が向上する可能性があります。[29] [30]
Silverlight サポート
IronRubyはSilverlightでサポートされていました。JavaScriptエンジンと同様に、ブラウザ内でスクリプトエンジンとして使用できます。[31] IronRubyスクリプトは、タグ内の単純なクライアント側JavaScriptスクリプトのように渡されました。埋め込まれたXAML<script>マークアップを変更することもできます。[32]
この背後にある技術はゲシュタルトと呼ばれていました。[33]
//DLR 開始 スクリプト。
<script src= "http://gestalt.ironruby.net/dlr-latest.js" type= "text/javascript" >
// IronRubyとSilverlightに渡される
クライアント側 スクリプト。
<script type= "text/ruby" > window.Alert("Hello from Ruby")
</script>
同じことがIronPythonでも起こりました。[34]
テストインフラストラクチャ
IronRubyはRubyプログラミング言語の完全かつ実行可能な仕様を記述するプロジェクトであるRubySpecを統合しました。IronRuby Gitリポジトリには、MSpecテストフレームワークを含むRubySpecテストのコピーが含まれています。 [35]
ライセンス
IronRubyは以前、OSI認定BSDスタイルのライセンスであるMicrosoft Public Licenseの下でリリースされていました。[36]
2010年7月16日、マイクロソフトはDLRとともにIronRubyをApache License 2.0の下で再ライセンスした。[37]
さらに読む
- フリードマン、シェイ(2010 )。IronRuby Unleashed。Sams Publishing。ISBN 978-0-672-33078-0。
- ポルト・カレロ、イヴァン。バーミスター、アダム(2010)。IronRuby の動作中。マニング出版物。ISBN 978-1-933988-61-0。
参照
- アイアンパイソン
- アイアンスキーム
- ルビー
- Ruby on Rails は、 Ruby用のオープンソース Web アプリケーション フレームワークです。
参考文献
- ^ S. Somasegar . 「IronRuby の早期概要」 。2007年7 月 25 日閲覧。
- ^ 「RubyForge: IronRuby: プロジェクト情報」。2016年9月25日時点のオリジナルよりアーカイブ。2007年9月7日閲覧。
- ^ Wilco Bauwer. 「Microsoft の Iron Ruby」。2007 年 9 月 29 日時点のオリジナルよりアーカイブ。2007 年7 月 24 日閲覧。
- ^ John Lam. 「Microsoft と IronRuby」。2007 年 6 月 12 日時点のオリジナルよりアーカイブ。2007 年6 月 18 日閲覧。
- ^ John Lam. 「IronRuby の初見」。2007 年 7 月 26 日時点のオリジナルよりアーカイブ。2007 年7 月 23 日閲覧。
- ^ Lam, John. 「IronRuby on Rubyforge!」。2007年9月3日時点のオリジナルからアーカイブ。2007年8月31日取得。
今日、RubyforgeのIronRuby Subversionリポジトリからソースコードをチェックアウトする必要があります。Subversionクライアントが必要です。TortoiseSVNをお勧めします。コマンドラインからソースをビルドするには、コンピュータにRubyがインストールされている必要があります。
- ^ Lam, John (2008 年 4 月 29 日)。「IronRuby について...このブログから本当にそう思える」。2009 年 3 月 16 日のオリジナルからアーカイブ。2008年5 月 25 日取得。DLR
はコミュニティからの貢献を受け入れません (...) 現在、SNAP チェックインが成功するたびに SVN にプッシュするわけではありません。
- ^ Lam, John (2008 年 7 月 24 日)。「IronRuby at OSCON」。2008 年 8 月 7 日時点のオリジナルからアーカイブ。2008年8 月 4 日閲覧。
最初のバイナリ リリースを出荷します。このパッケージでは、「バッテリー付属」アプローチを採用し、Ruby 標準ライブラリを同梱して出荷します。
- ^ 「IronRuby on Rails」。2009年5月29日時点のオリジナルよりアーカイブ。 2008年5月25日閲覧。
- ^ Lam, John (2008年5月24日). 「IronRuby r112 is out」。2009年3月16日時点のオリジナルよりアーカイブ。 2008年5月25日閲覧。
- ^ Lam, John (2008 年 5 月 25 日). 「IronRuby / Rails の質問」。2009 年 3 月 17 日のオリジナルからアーカイブ。2008年5 月 25 日取得。まだ
最終段階には至っていないと思います :) 現在、Rails の機能テストをほとんど実行できておらず、デプロイメントについて考え始める前に、さらに多くのライブラリ作業を行う必要があります。
- ^ Schementi, Jimmy (2008 年 5 月 25 日)。「RailsConf 2009 での IronRuby」。2008 年5 月 25 日取得。Rails
を実行する IronRuby は目新しいものではありませんが、それをうまく、あるいは完全に実行することは目新しいことです。IronRuby は、単なるおもちゃの hello-world サンプルではなく、実際の Rails アプリケーションを実行できるようになりました。これは、Rails 上の IronRuby が実稼働の準備が整ったことを意味するものではありませんが、前進の大きな指標です。
- ^ 「IronRuby 0.9」。2009年7月23日。2009年5月12日時点のオリジナルよりアーカイブ。2009年8月3日閲覧。
- ^ Cangiano, Antonio (2009 年 8 月 3 日)。「Windows での IronRuby、Ruby 1.8、Ruby 1.9 のパフォーマンスの比較」。2009 年8 月 3 日閲覧。
- ^ 「IronRuby 1.0RC1」。2009年11月20日。2009年12月21日時点のオリジナルよりアーカイブ。2009年12月29日閲覧。
- ^ 「IronRuby 1.0 リリース ノート」。2010 年 4 月 12 日。2010 年 4 月 16 日のオリジナルからアーカイブ。2010年4 月 17 日取得。IronRubyに
は現在、2 つのフレーバーがあります。1 つは .NET 4.0 上で実行されるフレーバー、もう 1 つは .NET 2.0 SP1 以降の任意の以前のフレームワーク上で実行されるフレーバーです。.NET 4.0 フレーバーは、起動時間が速く、C# の dynamic キーワードと互換性があり、.NET 4.0 の新機能にアクセスできます。したがって、Microsoft .NET Framework 4.0 が本日から一般公開されているため、現在は .NET 4.0 フレーバーをダウンロードすることをお勧めします。Mono との互換性を確保するには、2.0 SP1 の zip ファイル リリースを使用してください。
- ^ 「MRI 1.8.7 互換性」。2010 年 2 月 12 日。2011 年 9 月 28 日時点のオリジナルよりアーカイブ。2010 年3 月 6 日閲覧。
- ^ 「MRI 1.8.7 互換性」 2010 年 2 月 14 日。2011 年 9 月 28 日時点のオリジナルよりアーカイブ。2010年3 月 6 日閲覧。IronRuby 1.0.x
リリース: ruby-1.8.6 のみ互換。IronRuby 1.x リリース: ruby-1.9 のみ互換
- ^ 「それはあなたではなく、私です: Microsoft が IronRuby を廃止」InfoWorld 2010 年 8 月 11 日2012 年12 月 28 日閲覧。
- ^ Schementi, Jimmy (2010 年 8 月 6 日)。「ニュースを広めよう: Jimmy と IronRuby の将来」。2012 年12 月 28 日閲覧。
全体的に、IronRuby と .NET の動的言語全般に対する取り組みが著しく欠如しているように思います。私が退職した時点では、IronRuby に取り組んでいた Microsoft 社員は Tomas と私だけでした。
- ^ Zander, Jason. 「IronPython および IronRuby の新しいコンポーネントと貢献者」。Microsoft。2014年12 月 27 日閲覧。
- ^ 「IronRuby 1.1.3」。ironruby.codeplex.com。2011年3月13日。2013年5月30日時点のオリジナルよりアーカイブ。2013年5月19日閲覧。
- ^ Miguel de Icaza (2009 年 7 月 27 日)。「Mono の .NET CLR との互換性の向上」。2009 年8 月 3 日閲覧。
記憶にある限り、IronPython、IronRuby、または Dynamic Language Runtime の新しいバージョンのほとんどで、Mono に欠けている新しい機能が明らかになりました。
- ^ Sanghyeon, Seo (2008年8月6日). 「IronRubyとMono」。2009年3月16日時点のオリジナルよりアーカイブ。 2008年9月13日閲覧。
- ^ Vander Schelden, Wim (2008年9月4日). 「IronRubyとMono」。2009年3月16日時点のオリジナルよりアーカイブ。 2008年9月13日閲覧。
- ^ Hall, Ben (2009 年 1 月 23 日). 「DLR Daily Builds (including IronRuby)」。2009 年 3 月 15 日時点のオリジナルよりアーカイブ。2009年1 月 23 日閲覧。
- ^ Porto Carrero, Ivan (2009年5月26日). 「mono builds」。2012年2月23日時点のオリジナルよりアーカイブ。 2009年6月5日閲覧。
- ^ Hagenlocher, Curt (2008 年 12 月 16 日). 「Xna+IronRuby+RubyNewb=headache」。2009 年 3 月 16 日時点のオリジナルよりアーカイブ。2008年12 月 20 日閲覧。
- ^ Brotherus, Robert (2008 年 12 月 12 日)。「WPF データバインディングと Ruby オブジェクト」。2009 年 3 月 25 日時点のオリジナルよりアーカイブ。2008年12 月 13 日閲覧。
- ^ 「Dynamic .NET - Silverlight と IronRuby を使用したインタラクティブな Bing マップの作成」。learn.microsoft.com。2015年 9 月 22 日。
- ^ ブラウザでの IronRuby - IronRuby.net
- ^ 「IronRuby で WPF アプリケーションを構築する」。InfoQ。
- ^ Schementin, Jimmy (2009 年 7 月 22 日)。「Gestalt: Ruby and Python in the browser, again」。2018 年1 月 19 日閲覧。
- ^ 「Silverlight: IValueConverter とカスタム UserControl を使用して XAML 内に IronRuby/DLR スクリプトを埋め込む | Chris Pietschmann」。pietschsoft.com。
- ^ "RubySpec". GitHub。2010 年10 月 23 日取得。IronRuby
GIT リポジトリには、External.LCA_RESTRICTED\Languages\IronRuby\mspec の下に、MSpec テスト フレームワークを含む RubySpec テストのコピーが含まれています。これにより、既存のテストの変更や新しいテストの作成、IronRuby ソースのバグの修正が、すべて IronRuby リポジトリへの単一のコミットで簡単に実行できます。
- ^ Bort, Julie (2010 年 4 月 14 日)。「3 年間の努力の末、Microsoft のオープン ソース IronRuby が安定して利用可能に」。Network World。
- ^ 「IronRuby License」。2010年7月16日。2010年12月6日時点のオリジナルよりアーカイブ。2010年7月27日閲覧。
外部リンク
- IronRubyホームページ
- IronRuby 2009年12月30日アーカイブ、CodeplexのWayback Machineにて
- IronRuby ソースコード
- S. Somasegar の IronRuby 発表ブログ記事
- John Lam による RubyConf 2007 での IronRuby の現状
- IronRuby: 適切な仕事のための適切な言語 (PDC2008 の John Lam 氏による)
