作为一名狂热的功能程序员,我总是希望让更多的人进入函数式编程的精神。所以通常我会试着解释FP为他人提供的好处,但是迄今为止没有好运气。在这个讨论中经常出现的一个论点是,FP听起来很好,但实际上似乎只适合于有限的学术目的。这通常得到争论的支持,几乎没有任何公司使用功能性语言。“现实世界”中的功能技巧
我不能提出任何实质性的论据,反对在该公司中除了固有的鸡蛋问题之外,公司缺乏FP的用途(我只知道有两家公司使用OCaml,我认为这种情况对于其他语言)。
但是一个出路这种说法往往是向他们展示,其中技术从FP(尽管也许不是语言)使人们的主流,并可能已经现在他们受益。例如,因为我也使用了很多C++,所以我经常引用STL-Algorithm软件包,它完全是以功能的方式完成的,因为OOP只是无法轻松分离数据结构和算法。另一个例子是git,它使用一个非常类似于任何FP语言中表示树的方式的不变数据结构(实际上除了与之前修订的反向链接外,它完全相同),因为这个数据结构提供了最简单和最快的持久性。
什么其他的例子在野外的FP-技术使用,你可以给?
C#3.5及以上版本正在将程序员转移到FP。它支持lambda表达式,而IEnumerable的LINQ扩展只是很棒。请参阅http://www.c-sharpcorner.com/uploadfile/rmcochran/introduction-to-functional-programming-in-C-Sharp/。 – 2012-01-11 08:08:39
只是出于好奇。你说你知道2家公司使用OCaml,哪家公司? (我只知道简街) – insumity 2012-01-11 09:32:51
简街是其中之一,另一个是MLState(但他们仍然是一个小创业公司)。 – LiKao 2012-01-11 10:00:05