微軟的IronRuby項目為Windows平台帶來了強大的動態語言,Ruby程式設計語言是一個現代的,物件導向的 基礎語言,它的文法靈感來自Perl和Smalltalk語言,它是由一名日本人松本行弘(外號Matz)發明的, 用他的話說,他是想發明一種語言比Perl更強大,同時比Python更物件導向的程式設計語言,在 “http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.html”有一篇對松本行弘專訪文章, 大家可以去看看。於是Ruby被設計為非常貼近自然語言,作者的原意就是要減少編程時候的不必要的瑣碎 時間,令編寫程式的人高興,他於1996年發布了1.0版本。
這麼多年來,Ruby一直鮮為人知,但它的功能已經遠遠超出了最初設計時的想法:以最簡化的方法操 作資料和環境。我第一次“玩”它還是在幾年前,那時我正在尋找一種替換處理自動管理工作的批處理文 件的方法。
Ruby真正開始流行還得從一個來自伊利諾斯洲芝加哥市的名叫37signals小公司說起,它們發布了一個 名叫Rails的Web應用程式架構,這個新的架構吸取了已經被證明是可靠的Model-View-Controller和 ActiveRecord模型的經驗,並且添加了一些新的思想,如convention over configuration,導致它實現 了太多的目標,幾乎不需要編碼了。
RubyCLR和IronRuby
在2006年早些時候,John Lam發布了一個開源項目,叫做RubyCLR,它在Ruby和.NET之間起到一個橋樑 的作用,它允許使用者可以直接從Ruby訪問.NET平台豐富的資源,甚至將Ruby對象都暴露給CLR了,這個項 目非常有雄心,但它沒有打算將Ruby向.NET靠攏,而是打算讓這兩個世界相互對話,你仍然需要在你的機 器上按照Ruby運行時環境。
RubyCLR項目為人們理解如何將Ruby和.NET和諧地溶合到一起邁出了關鍵的第一步,John的工作沒有引 起人們的注意,2006年末,他在他的部落格上宣布加入微軟新成立的動態語言運行時環境(DLR)團隊,在 John宣布前幾個月,微軟發布了IronPython的1.0版本,它是Python語言在.NET架構上一個新的實現,動 態語言運行時環境在IronPython上工作,它在.NET架構構建了一個運行環境,允許動態語言進入.NET。
John和他的團隊在2007年的MIX大會上宣布了IronRuby,可能真正讓人吃驚的是IronRuby項目本身是微 軟的第一個真正意義上的開源.NET語言,不僅可以得到原始碼,而且還可以擷取來自社區的貢獻。
IronRuby仍然處於發展階段,然而偶然也會刪掉已經可以利用的東西,這些東西通常是其它項目的一 部分,如最近發布的Silverlight 2.0 Beta 2,這些後續的項目也放在原始碼樹中了,並且也有相應的郵 件列表。