那么,F#开源后有什么不同?

4
我发现F#将会在Apache许可证下发布,感到非常兴奋。但我仍然不确定这门语言/生态系统是否值得我投入时间。
那么,你认为现在会发生什么?F#团队只发布“源代码”,暂时不接受贡献(我怀疑他们永远不会)。另一方面,有F# PowerPack,可以尝试使F#世界变得更好(我希望他们会接受贡献)。
有一个http://fsharp.net网站,有很多链接,但没有开放的邮件列表/论坛。http://cs.hubfs.net似乎是空的和死亡的-它真的是社区的中心吗?有社区吗?
Mono似乎对F#感兴趣,但他们会适应它吗?此外-如果微软自己非常努力地不用F#替换C#/VB,那么这门语言真正用于什么?你不会得到Code Cotracts支持,在Visual Studio中没有mstest运行程序,也没有GUI设计工具等。
那么,F#只是另一个微软产品还是更多的东西?

1
有些任务非常适合于函数式编程语言,所以他们提供了一个这样的语言。此外,我认为他们试图阻止 C# 由于所有似乎已经具有的函数式编程结构而变得臃肿。 - Rafe Kettler
1
这是一个没有明确答案的水晶球问题。不适合在SO上提问,请尝试在programmers.stackexchange.com上提问。 - Hans Passant
2个回答

8
这个问题中有很多关于未来的预测是无法回答的,所以我会跳过这些部分。关于社区,该语言的社区很小(它是一种相对较新的语言),但正在快速增长。您可以从网络博客(如Planet F#)、Stack Overflow 上的F#标签hubFS中的问题中获得一个不错的了解。关于新许可证,现在可以做很多以前不能做的事情。您可以将F#打包到Mono发行版中。您可以编写独立的F#工具/程序,例如F# Web Snippets,而无需采取荒谬的扭曲来避免违反许可证(该工具的当前实现需要进行额外的工作以绕过旧许可证)。您可以做任何想做的事情;如果您想分叉整个项目,将其放在GitHub上,让十个或一百个朋友测试代码并制作一个F# JVM克隆版,那么您也可以这样做。实际上,我认为在短期内最有可能发生的事情是人们利用编译器源代码编写F#工具。如果您喜欢在emacs中开发,那么现在您可以利用F#编译器的所有现有逻辑,轻松创建“转到定义”功能,只需按下Ctrl-Alt-Meta-G或其他键(我不知道,因为我不使用emacs)。或者——天啊,我简直不敢相信我现在才记起来了——您可以编写一个VS F#插件,实现这里所示的功能:Is there an IDE out there that does structural syntax highlighting? 这是我一直想做的事情,但需要使用F#编译器来完成解析树结构的重要工作。哦,天啊,我绝对需要找到时间去做这件事。总之,并不是一切都美好无比;很多人喜欢关注社区贡献的“一次性源代码放置”和“不允许撤回”,这可能不是理想的。但这与三天前的世界状态没有什么不同。所以我会关注与三天前不同的地方,在新许可证下,可以利用编译器代码构建一些酷工具,甚至可能围绕这些工具发展更多社区。

1
我还没有完成,但你可以在这里看到我的结构语法高亮器的进展:http://lorgonblog.wordpress.com/2010/11/12/the-f-compiler-source-release-making-it-easy-to-write-cool-visual-studio-extensions/ - Brian

7
除了Brian发布的内容之外,我认为还有一个非常重要的点需要提出(当然,我不在Microsoft内部,所以我只能作为一个长期观察Microsoft编程语言的外部观察者来谈论...):
我认为发布F#的源代码并不意味着Microsoft对它的重视程度低于其他Visual Studio语言(如C#或VB)。实际上,我认为恰恰相反。
原因有几点:
- F#中使用的开源模式是与IronPython或IronRuby的开源模式完全不同的东西。Iron*项目总是希望(最终)接受贡献。F#团队非常清楚他们想要控制语言并使其发展。 - 学术界对F#的兴趣很大,而这是一个拥有开源许可证源代码重要性的社区,这可能更多地是出于原则而非实际原因。 - 在PDC 2010上宣布的新功能展示了F#未来数据访问的非常明确的愿景(这可能潜在地适用于所有其他语言)。我相信,如果Microsoft想要“放弃”F#,他们不会在F#中展示这个愿景。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接