摘要:
什么是泛函编程(Functional Programming)?泛函编程就是用函数编写程序。这个回答太抽象,等于没说。 再说清楚一点:泛函编程就想砌积木一样把函数当成积木块,把函数的输出输入作为积木的楔子和楔孔,把一个函数的输出当作另一个函数的输入组合成一个更大的函数。整个砌积木的过程就是泛函编程。 阅读全文
posted @ 2018-03-26 11:59
zzfx
阅读(163)
评论(0)
推荐(0)
摘要:
函数式编程关心数据的映射,命令式编程关心解决问题的步骤 我想稍微改一下,使其更数学化一点。 函数式编程关心类型(代数结构)之间的关系,命令式编程关心解决问题的步骤 函数式编程中的lambda可以看成是两个类型之间的关系,一个输入类型和一个输出类型。lambda演算就是给lambda表达式一个输入类型 阅读全文
posted @ 2018-03-26 11:36
zzfx
阅读(343)
评论(0)
推荐(0)
摘要:
函数式语言当然还少不了以下特性: 高阶函数(Higher-order function) 偏应用函数(Partially Applied Functions) 柯里化(Currying) 闭包(Closure) 高阶函数就是参数为函数或返回值为函数的函数。有了高阶函数,就可以将复用的粒度降低到函数级 阅读全文
posted @ 2018-03-26 11:35
zzfx
阅读(845)
评论(0)
推荐(0)
摘要:
相信大家平时或多或少听过不少关于“函数式编程” (FP)相关的词语,有些Geek经常吹捧函数式的优点或者特性比如:纯函数无副作用、不变的数据、高阶函数、流计算模式、尾递归、柯里化等等,再加上目前的函数式理论越来越多的应用于工程中,OCaml,clojure, scala等FP语言日渐火爆。本编文章, 阅读全文
posted @ 2018-03-26 11:21
zzfx
阅读(327)
评论(0)
推荐(0)