百科问答小站 logo
百科问答小站 font logo



MS内部对F#目前的态度如何?为何明显比C#更简洁强大的语言,却不花力气推广? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

我来说几句吧。

首先提问者的补充说明基本上是非常混乱:

确实如评论中所言,函数式语言目前没有真正火的,但这更显出开源社区中函数式程序员的珍贵。而ms不发力推的话,scala、clojure将把(或者说已经把)开源社区中仅有的那么点函数式高手都吸引过去了。
我相信未来主流的编程范式必然会渐渐向函数式倾斜,那么这批开源社区中热爱函数式的程序员就是引导语言、平台前进的有生力量。
不过或许这也是ms行事风格的必然结果,总是想帮程序员操办好一切,连主要框架都要自己来,而不是扶持社区版,更不用说语言,因此Clojure这样的非主流,只会在java平台流行,在.net平台几乎无人使用。

没有真正火的是纯函数式语言,因为纯函数式语言的运用范围是非常有限的,而现在的语言都是多范式语言,真正火的语言,JavaScript本身就是函数式的底子,C#从2.0就开始支持匿名方法和闭包(基本上就可以认为已经具备函数式范式),C++和Java近期也引入了lambda表达式。

而scala和clojure本质上来说和C#这种混合范式的语言也没有什么区别。至于什么开源社区中仅有的那么点函数式高手都吸引过去了,我表示很无语。

至于未来函数式当然是非常重要的一个范式,否则主流的程序设计语言不会纷纷都支持函数式。但不会出现什么函数式一统江湖的局面,就像现在OO也没有一统江湖一样。

最后不管什么东西都能扯到虚无飘渺的MS行事风格上,我建议多写代码少听那些所谓的大牛瞎BB。

补充一下我这段话的意思好了,简单说就是牛逼的人用的语言你也用,不代表你也牛逼。所以没有必要过于关心牛逼的人用什么语言,自己用得好能赚钱就好了,把自己变牛逼才是正事儿。


Java平台出现那么多语言除了有一群喜欢折腾的人之外,还有就是Java实在太shit。

F#不温不火的一个很重要的原因也是他的竞争对手C#和VB实在太强大,虽然F#看起来很好,但是还没有好到让大家迁移的地步。函数式并不是F#的杀手锏,因为C#/VB已经足够好,Computation Expression才是大杀器,但目前对于这个东西的研究和案例都不多,不足以说服大家迁移。而且这货一旦出现很多案例说不定又会被Anders继续迁移到C#和VB上来。



最后补充一些,F#除了可以使用专为F#设计的函数之外,同样也可以完全使用.NET Framework提供的所有库函数,譬如说老赵那段F#代码,也可以写成用System.Core里面的扩展方法一样,我只改写了一小段做个示范:

       open System.IO open System.Linq  [<EntryPoint>] let main filepath =   File.ReadAllLines(filepath.[0])     .SelectMany(fun line -> line.Split(' ').AsEnumerable())   |> ignore      0      

所以完全不用担心没人用F#没人给F#添砖加瓦啥的,即使F#自己啥也没有,仅仅.NET Framework也甩其他语言几条街了。。。。




  

相关话题

  WannaCry 勒索软件事件对微软的业务会产生正面还是负面影响? 
  微软小冰和小娜哪个更有可能统治世界? 
  为什么感觉游戏画面在 2008-2010 年间有了一个很大的进步? 
  如何看待微软 Xbox 正面向国内组建新团队,透露出哪些信息? 
  现在 ( 2016 年 8 月),Surface Pro 4 的实际体验如何? 
  如何评价 Midori(Operating System)? 
  微软有什么连软粉都用不下去的产品吗? 
  为什么微软的编程语言C# F#的编译器要那么多黑科技? 
  为什么微软市值能保持世界第一这么长时间,并且一直在 1 万亿美元以上? 
  为什么感觉游戏画面在 2008-2010 年间有了一个很大的进步? 

前一个讨论
如何才能写出没有bug的程序?
下一个讨论
WTO、DVD 或者 CCTV 算不算汉语?





© 2024-12-18 - tinynew.org. All Rights Reserved.
© 2024-12-18 - tinynew.org. 保留所有权利