在过去的几年里,F#已经演变成微软完全支持的语言之一,采用了在OCaml,ML和Haskell中孵化的许多想法.
在过去几年中,C#通过引入越来越多的功能语言功能扩展了其通用功能:LINQ(列表理解),Lambdas,闭包,匿名代表等等......
鉴于C#采用这些功能特性和F#的分类法作为一种不纯的函数式语言(它允许您在调用函数时访问框架库或更改共享状态),两种语言之间存在很强的相似性,尽管每种语言都有自己的极端主要强调.
我对您在制作多语言程序中使用这两种语言的任何成功模型以及您在过去一年中使用F#编写的生产软件(Web应用程序,客户端应用程序,服务器应用程序)中的区域感兴趣用C#编写.
我目前正处于一个新的分布式服务器框架的研究阶段,该框架将用于实时模拟(20,000多个客户端).我们决定使用C#/ .NET作为我们的平台,但有人最近向我传递了一些关于F#的文章,从表面上看,它看起来像是用于开发服务器的一个很棒的工具.我正在寻找一些使用F#解决大型现实问题的人的想法.
F#是一个很好的工具吗?
有什么陷阱?我们正在处理大量交互消息和大量更改状态,尽管这可能存在于某种类型的数据库云中.功能编程似乎在处理大规模并行和分布式计算方面有所突出,但似乎不鼓励改变任何类型的状态.
F#会坚持下去吗?我担心它是如此新颖,我不想把自己绑在一个垂死的平台上(J#有人吗?)......
是否有使用F#的大型现实世界解决方案(最好是服务器)?
F#是否适用于大型工程师团队?我确信这个问题的答案很简单,但我仍然对语言/工具非常不熟悉.
感谢您的时间.