这篇不太容易看懂,拖延了很久。其中的代码能够看懂,但是的确没有在工作中使用过函数式编程的语言,很久以前看过一点点 Lisp。
之前用过一段 C# 语言,大概是到 .NET Framework 4.0 之后提供了一些类似于 lamda 的语法糖,以及 LINQ 之类的查询,感觉和这里的函数式编程有点类似。不过当时只是在编辑器插件的帮助下,将命令式(过程式)的语言,转换成函数式的。看上去的确简洁了不少,但是感觉调试起来比较困难。
后来转而使用 Ruby,Ruby 本身也提供了类似于 map, reduce 之类的函数,似乎有函数式编程的影子。
感觉似乎命令式编程和函数式编程又相互借鉴、互相印证的地方。
函数式编程可能更适合高性能计算、或分布式领域,因为更容易发挥其优势。
展开