百科问答小站 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也甩其他语言几条街了。。。。




  

相关话题

  什么东西微软做的比 Google 好? 
  Windows11与鸿蒙谁会赢得未来主要市场?2 万亿市值的微软,我们还能期待什么? 
  .NET 会翻身吗? 
  如何动态加载dll并继承该类? 
  如何看待微软 Edge 浏览器将使用 Chromium 内核? 
  DirectX是谁开发的?有什么过人之处? 
  如何评价微软中国的 Windows 10 的文案? 
  gcc,clang,msvc等编译器有什么区别? 
  如何看待王垠的《微软感受》? 
  如何评价 KMS 激活工具上架微软官方商店? 

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





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