對于Visual Studio 2010 F#相關(guān)介紹
Visual Studio 2010 F#是微軟研究院、劍橋和微軟開發(fā)部聯(lián)合進(jìn)行的高級開發(fā)項(xiàng)目。我非常高興作為語言構(gòu)架師參與其中,并且我將一直留在微軟研究院。我們強(qiáng)大的團(tuán)隊(duì)包括了來自劍橋、Redmond、溫哥華和中國的人們,一些團(tuán)隊(duì)成員還工作在德國和紐約。
Visual Studio 2010 F#——微軟支持的***個(gè)主要的函數(shù)式語言,其基于OCaml。Ocaml被選中的一部分原因是,它支持函數(shù)式、命令式和面向?qū)ο蟮幕旌暇幊田L(fēng)格。雖然F#和OCaml吸引人們的地方是函數(shù)式編程,不過其他重要的方面還包括它們可以利用.NET框架的功能特性。#t#
現(xiàn)在,Visual Studio 2010 F#還沒有被考慮作為.NET 4.0的特性。而是像J#那樣更多地作為一個(gè)獨(dú)立的分發(fā)包發(fā)布。這樣允許微軟為F#在Mono和CLR 2.0平臺上的運(yùn)行提供支持。
與另外一個(gè)新微軟語言的精神相同,F(xiàn)#編譯器和工具將在微軟公共許可協(xié)議(Microsoft Public License)下開源。這一許可協(xié)議是所有微軟許可協(xié)議中最寬松的一個(gè),基本來說你只要保留版權(quán)聲明并且不對作者提出控告,那么你就可以做你想做的任何事情。
在Visual Studio里,Visual Studio 2010 F#并不傾向于被單獨(dú)使用。雖然微軟鼓勵(lì)開發(fā)人員使用F#來構(gòu)建應(yīng)用程序的核心,但對于呈現(xiàn)層他們還是推薦使用VB和C#。Don Syme繼續(xù)解釋到:
我們所關(guān)注的是,發(fā)布一個(gè)高質(zhì)量的Visual Studio 2010 F#核心工具,可以增強(qiáng)Visual Studio的實(shí)力,讓其成為一個(gè)具有豐富界面開發(fā)能力的面向?qū)ο蟮木幊汰h(huán)境。結(jié)果,我們做出了一個(gè)明確的決定,在這個(gè)版本中還是利用C#和Visual Basic的強(qiáng)大能力來作為呈現(xiàn)界面和具有良好設(shè)計(jì)器支持的編程語言。這意味著,F(xiàn)#用戶將要使用Visual Studio設(shè)計(jì)工具來生成C#或Visual Basic代碼,并把這些組件合并到他們的F#應(yīng)用程序中。
雖然F#超越了OCaml的基礎(chǔ)功能,但它沒有完全地拋棄它們。通過使用F# Power Pack組件,開發(fā)人員將依舊能夠編寫可被編譯為OCaml的F#代碼。這就要求使用有限的語言子集,盡管可以期望工具能告知開發(fā)人員哪些是只適用于F#的代碼,但人們還是會感覺到諸多限制。