2010-11-06 116 views
4

發現F#將在Apache許可下發布後,我非常興奮。但我仍然不確定,語言/生態系統是否值得我投入時間。那麼現在它已經開源了,那麼F#有什麼優勢呢?

所以 - 你認爲現在會發生什麼? F#團隊只發布「源代碼下載」,並且現在不承擔任何責任(我懷疑他們會這樣做)。另一方面有F#PowerPack,可以讓F#世界變得更好(我希望他們的確有貢獻)。

http://fsharp.net網站有很多鏈接,但沒有開放的郵件列表/論壇。 http://cs.hubfs.net似乎空洞而死 - 它真的是社區的中心嗎?有沒有社區?

單聲道似乎對F#感興趣,但他們會適應嗎?另外 - 如果MS本身非常努力地不想用F#替換C#/ VB,那麼語言的真正用途是什麼?你沒有得到Code Cotracts的支持,沒有在視覺工作室mstest亞軍,沒有GUI設計師等。

那麼F#是另一個MS產品或更多?

+1

有些任務只是非常適合功能性編程語言,所以他們提供了一個。另外,我認爲他們試圖讓C#不會因爲它現在所有的函數式編程結構而變得臃腫。 – 2010-11-06 15:42:22

+1

這是一個沒有明確答案的水晶球問題。不適合所以,請嘗試programmers.stackexchange.com – 2010-11-06 16:20:13

回答

8

在這個問題中有很多「預測未來」,沒有人能回答,所以我會跳過這些部分。

關於社區,社區很小(這是一種相對較新的語言),但發展很快。您可以從網絡上的博客中獲得體面的感受,例如Planet F#供稿,或者來自SO上的F# tag中的問題或hubFS

關於新許可證,現在可以做很多以前無法做到的事情。您可以在Mono發行版中打包F#。您可以編寫獨立的F#工具/程序(如F# Web Snippets),而不必訴諸於可笑的扭曲以避免破壞許可證(該工具的當前實現會爲解決舊許可證做出瘋狂的額外工作)。你可以,你可以做任何你想做的事情;如果你想分解所有東西,把它放在github上,讓十到一百個朋友在代碼上轟炸,爲JVM或其他東西做一個F#克隆,你也可以這樣做。

實際上,我認爲近期最有可能發生的事情是人們將利用編譯器源代碼編寫F#工具。如果你喜歡用emacs開發,那麼嘿,現在你可以利用F#編譯器的所有現有邏輯輕鬆地創建「定義」功能,當你按下Ctrl-Alt-Meta-G之類的東西時(我不知道,我不喜歡不使用emacs)。或者 - 哇靠,我不能相信我現在纔想起了這一點 - 你可以寫一個VS F#插件,做什麼圖爲:

Is there an IDE out there that does structural syntax highlighting?

這是我一直想做的事,但它需要使用F#編譯器來完成繁重的工作以獲得分析樹結構。哦,男孩,我現在完全需要去找時間去做那件事。

無論如何,它不是所有的獨角獸和玫瑰;許多人喜歡關注社區貢獻的「一次性來源下降」和無迴避,這可能並不理想。但這與三天前的世界狀況沒有什麼不同。所以我將重點介紹與012天前的有什麼不同,並且有了新的許可證,可以利用編譯器代碼構建一些很酷的工具,甚至可以圍繞這些工具發展更多的社區。

+1

我還沒有完成,但你可以看到我在我的結構語法熒光筆在這裏:http://lorgonblog.wordpress.com/2010/11/12/the -f編譯源釋放的決策-IT-容易寫爽視覺工作室的擴展/ – Brian 2010-11-12 10:23:33

7

除了什麼布賴恩貼,還有,我想一個(我覺得)很重要的一點,使
(當然,我不是在微軟內部,所以我只能談談作爲外部觀察者誰已經在微軟長時間觀看編程語言......):

我認爲,釋放F#的來源並不意味着微軟比其他Visual Studio語言如C#或VB。事實上,我認爲這完全相反。

有幾個原因:在F#中使用

  • 開源模式是一個完全不同東西,IronPython的或IronRuby的開源模式。鐵*項目一直希望(最終)接受捐款。 F#團隊清楚他們想要控制語言並發展它。

  • 有很多來自學術界在F#的興趣,這是一個社區,具有開放源碼許可的源代碼是很重要的 - 或許更多的是因爲比實際原因的原則。

  • PDC 2010上宣佈的新功能對F#中的數據訪問的未來展示了非常明確的願景(可能適用於所有其他語言)。我相信,如果微軟想要「放棄」F#,他們就不會在F#中展示這一願景。

相關問題