From 34423059641551b37e82e9ac3f9607505ba4bcfc Mon Sep 17 00:00:00 2001 From: Jerry Lee Date: Sat, 7 Sep 2019 20:51:17 +0800 Subject: [PATCH] improve wording #64 --- .../README.md | 135 ++++++++++-------- .../lazy-small.jpg | Bin 0 -> 27378 bytes .../lazy.jpg | Bin 0 -> 123601 bytes 3 files changed, 73 insertions(+), 62 deletions(-) create mode 100644 a-practical-introduction-to-functional-programming/lazy-small.jpg create mode 100644 a-practical-introduction-to-functional-programming/lazy.jpg diff --git a/a-practical-introduction-to-functional-programming/README.md b/a-practical-introduction-to-functional-programming/README.md index d9437c7..cd506b4 100644 --- a/a-practical-introduction-to-functional-programming/README.md +++ b/a-practical-introduction-to-functional-programming/README.md @@ -1,16 +1,18 @@ -原文链接: [A practical introduction to functional programming](https://maryrosecook.com/blog/post/a-practical-introduction-to-functional-programming) - [Mary Rose](https://github.com/maryrosecook) +原文链接: [A practical introduction to functional programming](https://maryrosecook.com/blog/post/a-practical-introduction-to-functional-programming) - [Mary Rose](https://github.com/maryrosecook),2015-08-10 ## 🍎 译序 -本文是一篇手把手的函数式编程入门介绍,借助代码示例讲解细腻。但又不乏洞见,第一节中列举和点评了函数式种种让眼花缭乱特质,给出了『理解函数式特质的指南针:函数式代码的核心特质就一条,**无副作用**』,相信对于有积极学过挖过的函数式同学看来更是有相知恨晚的感觉。 +本文是一篇手把手的函数式编程入门介绍,借助代码示例讲解细腻。但又不乏洞见,第一节中列举和点评了函数式种种让眼花缭乱的特质,给出了『理解函数式特质的指南针:函数式代码的核心特质就一条,**无副作用**』,相信这个指南针对于有积极学过挖过函数式的同学看来更是有相知恨晚的感觉。 希望看了这篇文章之后,能在学习和使用函数式编程的旅途中不迷路哦,兄die~ +PS:本人是在《[Functional Programming, Simplified(Scala edition)](https://alvinalexander.com/scala/functional-programming-simplified-book)》这本书了解到这篇文章。这本书由浅入深循序渐进地对`FP`做了体系讲解,力荐![书的豆瓣链接](https://book.douban.com/subject/30326807/)。 + # 手把手介绍函数式编程:从命令式重构到函数式 -有很多函数式编程文章讲解了抽象的函数式技术,也就是组合(`composition`)、管道(`pipelining`)、高阶函数(`higher order functions`)。本文希望以另辟蹊径的方式来讲解函数式:首先展示我们平常编写的命令式而非函数式的代码示例,然后将这些示例转换成函数式风格。 +有很多函数式编程文章讲解了抽象的函数式技术,也就是组合(`composition`)、管道(`pipelining`)、高阶函数(`higher order function`)。本文希望以另辟蹊径的方式来讲解函数式:首先展示我们平常编写的命令式而非函数式的代码示例,然后将这些示例重构成函数式风格。 -本文的第一部分选用了简短的数据转换循环,将它们转换为函数式的`map`和`reduce`。第二部分则对更长的循环代码,将它们分解成多个单元,然后转换各个单元成函数式的。第三部分采用的是有一系列连续的数据转换循环代码,将其拆解成为一个函数式管道(`functional pipeline`)。 +本文的第一部分选用了简短的数据转换循环,将它们重构成函数式的`map`和`reduce`。第二部分则对更长的循环代码,将它们分解成多个单元,然后重构各个单元成函数式的。第三部分选用的是有一系列连续的数据转换循环代码,将其拆解成为一个函数式管道(`functional pipeline`)。 示例代码用的是`Python`语言,因为多数人都觉得`Python`易于阅读。示例代码避免使用`Python`范的(`pythonic`)代码,以便展示出各个语言通用的函数式技术:`map`、`reduce`和管道。所有示例都用的是`Python 2`。 @@ -40,11 +42,11 @@ 当人们谈论函数式编程时,提到了多到令人迷路的『函数式』特质(`characteristics`): -- 人们会提到不可变数据[1](#note1)(`immutable data`)、一等公民的函数[2](#note2)(`first class function`)和尾调用优化[3](#note3)(`tail call optimisation`)。这些是**有助于函数式编程的语言特性**(`feature`)。 +- 人们会提到不可变数据[1](#note1)(`immutable data`)、一等公民的函数[2](#note2)(`first class function`)和尾调用优化[3](#note3)(`tail call optimisation`)。这些是**有助于函数式编程的语言特性**。 - 人们也会提到`map`、`reduce`、管道、递归(`recursing`)、柯里化[4](#note4)(`currying`)以及高阶函数的使用。这些是**用于编写函数式代码的编程技术**。 - 人们还会提到并行化[5](#note5)(`parallelization`)、惰性求值[6](#note6)(`lazy evaluation`)和确定性[7](#note7)(`determinism`)。这些是**函数式程序的优点**。 -无视这一切。函数式代码的核心特质就一条:**无副作用**(`side effects`)。即代码逻辑不依赖于当前函数之外的数据,并且也不会更改当前函数之外的数据。所有其他的『函数式』特质都可以从这一点派生出来。在你学习过程中,请以此作为指南针。不要再迷路哦,兄die~ +无视这一切。函数式代码的核心特质就一条:**无副作用**(`side effect`)。即代码逻辑不依赖于当前函数之外的数据,并且也不会更改当前函数之外的数据。所有其他的『函数式』特质都可以从这一条派生出来。在你学习过程中,请以此作为指南针。不要再迷路哦,兄die~ 这是一个非函数式的函数: @@ -66,9 +68,9 @@ def increment(a): ## `map` -`map`入参是一个函数和一个条目的集合,创建一个新的空集合,在原始集合的每个条目上运行该函数,并将各个返回值插入到新集合中,然后返回新的集合。 +`map`输入一个函数和一个集合,创建一个新的空集合,在原来集合的每个元素上运行该函数,并将各个返回值插入到新集合中,然后返回新的集合。 -这是一个简单的`map`,它接受一个名称列表并返回这些名称的长度列表: +这是一个简单的`map`,它接受一个名字列表并返回这些名字的长度列表: ```python name_lengths = map(len, ["Mary", "Isla", "Sam"]) @@ -85,7 +87,7 @@ print squares # => [0, 1, 4, 9, 16] ``` -这个`map`没有输入命名函数,而是一个匿名的内联函数,用`lambda`关键字来定义。`lambda`的参数定义在冒号的左侧。函数体定义在冒号的右侧。运行函数体的结果(隐式)返回。 +这个`map`没有输入命名函数,而是一个匿名的内联函数,用`lambda`关键字来定义。`lambda`的参数定义在冒号的左侧。函数体定义在冒号的右侧。(隐式)返回的是函数体的运行结果。 下面的非函数式代码输入一个真实名字的列表,替换成随机分配的代号。 @@ -117,7 +119,7 @@ secret_names = map(lambda x: random.choice(['Mr. Pink', names) ``` -**练习1**:尝试将下面的代码重写为`map`,输入一个真实名称列表,替换成用更可靠策略生成的代号。 +**练习1**:尝试将下面的代码重写为`map`,输入一个真实名字列表,替换成用更可靠策略生成的代号。 ```python names = ['Mary', 'Isla', 'Sam'] @@ -129,9 +131,9 @@ print names # => [6306819796133686941, 8135353348168144921, -1228887169324443034] ``` -(希望特工会留下美好的回忆,在秘密任务期间不会忘记搭档的秘密代号。) +(希望特工会留下美好的回忆,在秘密任务期间能记得住搭档的秘密代号。) -我的解决方案: +我的实现方案: ```python names = ['Mary', 'Isla', 'Sam'] @@ -141,9 +143,9 @@ secret_names = map(hash, names) ## `reduce` -`reduce`输入一个函数和一个条目的集合,返回通过组合条目所创建的值。 +`reduce`输入一个函数和一个集合,返回通过合并集合元素所创建的值。 -这是一个简单的`reduce`,返回集合中所有条目的总和。 +这是一个简单的`reduce`,返回集合所有元素的总和。 ```python sum = reduce(lambda a, x: a + x, [0, 1, 2, 3, 4]) @@ -152,9 +154,9 @@ print sum # => 10 ``` -`x`是迭代的当前条目。`a`是累加器(`accumulator`),它是在前一项上执行`lambda`的返回值。`reduce()`遍历所有条目。对于每一个条目,运行以当前的`a`和`x`为参数运行`lambda`,返回结果作为下一次迭代的`a`。 +`x`是迭代的当前元素。`a`是累加器(`accumulator`),它是在前一个元素上执行`lambda`的返回值。`reduce()`遍历所有集合元素。对于每一个元素,运行以当前的`a`和`x`为参数运行`lambda`,返回结果作为下一次迭代的`a`。 -在第一次迭代`a`是什么值?并没有前一个的迭代结果可以传递。`reduce()`使用集合中的第一项作为第一次迭代中的`a`值,从集合的第二项开始迭代。也就是说,第一个`x`是集合的第二个条目。 +在第一次迭代时,`a`是什么值?并没有前一个的迭代结果可以传递。`reduce()`使用集合中的第一个元素作为第一次迭代中的`a`值,从集合的第二个元素开始迭代。也就是说,第一个`x`是集合的第二个元素。 下面的代码计算单词`'Sam'`在字符串列表中出现的次数: @@ -183,17 +185,19 @@ sam_count = reduce(lambda a, x: a + x.count('Sam'), 0) ``` -这段代码是如何产生它的初始`a`值?`'Sam'`的出现次数的初始值不能是`'Mary read a story to Sam and Isla.'`。初始累加器用`reduce()`的第三个参数指定。这样就允许使用与集合中的项不同类型的值。 +这段代码是如何产生初始的`a`值?`'Sam'`出现次数的初始值不能是`'Mary read a story to Sam and Isla.'`。初始累加器用`reduce()`的第三个参数指定。这样就允许使用与集合元素不同类型的值。 为什么`map`和`reduce`更好? 1. 这样的做法通常会是一行简洁的代码。 1. 迭代的重要部分 —— 集合、操作和返回值 —— 以`map`和`reduce`方式总是在相同的位置。 -1. 循环中的代码可能会影响在它之前定义的变量或在它之后运行的代码。按照惯例,地图和缩小是有用的。 -1. `map`和`reduce`是基本原子操作。阅读`for`循环时,必须一行一行地才能理解整体逻辑。往往没有什么规则可以以一个固定结构来明确代码的表义。相比之下,`map`和`reduce`则是一目了然表现出了组合复杂算法的构建块(`building blocks`)及其相关的元素,代码阅读者可以迅速理解并抓住整体脉络。『哦~这段代码正在转换这个集合中的每个项目;丢弃了一些转换结果;将剩余部分合并成为单个输出。』 -1. `map`和`reduce`有许多朋友,提供有用的、对基本行为微整的版本。比如:`filter`、`all`、`any`和`find`。 +1. 循环中的代码可能会影响在它之前定义的变量或在它之后运行的代码。按照约定,`map`和`reduce`都是函数式的。 +1. `map`和`reduce`是基本原子操作。 + - 阅读`for`循环时,必须一行一行地才能理解整体逻辑。往往没有什么规则能保证以一个固定结构来明确代码的表义。 + - 相比之下,`map`和`reduce`则是一目了然表现出了可以组合出复杂算法的构建块(`building block`)及其相关的元素,代码阅读者可以迅速理解并抓住整体脉络。『哦~这段代码正在转换每个集合元素;丢弃了一些转换结果;然后将剩下的元素合并成单个输出结果。』 +1. `map`和`reduce`有很多朋友,提供有用的、对基本行为微整的版本。比如:`filter`、`all`、`any`和`find`。 -**练习2**:尝试使用`map`、`reduce`和`filter`重写下面的代码。`filter`需要一个函数和一个集合,返回结果是函数返回`True`的所有项的集合。 +**练习2**:尝试使用`map`、`reduce`和`filter`重写下面的代码。`filter`需要一个函数和一个集合,返回结果是函数返回`True`的所有集合元素。 ```python people = [{'name': 'Mary', 'height': 160}, @@ -216,7 +220,7 @@ if height_count > 0: 如果上面这段代码看起来有些烧脑,我们试试不以在数据上操作为中心的思考方式。而是想一想数据所经历的状态:从人字典的列表转换成平均身高。不要将多个转换混在一起。每个转换放在一个单独的行上,并将结果分配一个有描述性命名的变量。代码工作之后,再合并缩减代码。 -我的解决方案: +我的实现方案: ```python people = [{'name': 'Mary', 'height': 160}, @@ -322,7 +326,7 @@ while time: 拆分代码成函数是一种很好的、简单易行的方法,能使代码更具可读性。 -这个技术使用函数,但但将函数用作子例程(`sub-routines`),用于打包代码。从导绳的意义上说,代码并不是函数式的。实现中的函数使用了没有作为参数传递的状态,即通过更改外部变量而不是返回值来影响函数周围的代码。要确认函数真正做了什么,读者必须仔细阅读每一行。如果找到一个外部变量,必须反查它的源头,并检查其他哪些函数改变了这个变量。 +这个技术使用函数,但将函数用作子例程(`sub-routine`),用于打包代码。对照上文说的指南针,这样的代码并不是函数式的。实现中的函数使用了没有作为参数传递的状态,即通过更改外部变量而不是返回值来影响函数周围的代码。要确认函数真正做了什么,读者必须仔细阅读每一行。如果找到一个外部变量,必须反查它的源头,并检查其他哪些函数更改了这个变量。 ## 消除状态 @@ -357,7 +361,7 @@ race({'time': 5, 代码仍然是分解成函数。但这些函数是函数式的,有三个迹象表明这点: -1. 不再有任何共享变量。`time`与`car_positions`作为参数传入`race()`。 +1. 不再有任何共享变量。`time`与`car_position`作为参数传入`race()`。 1. 函数是有参数的。 1. 在函数内部没有变量实例化。所有数据更改都使用返回值完成。基于`run_step_of_race()`的结果,`race()`做递归调用[3](#note3)。每当一个步骤生成一个新状态时,立即传递到下一步。 @@ -373,16 +377,16 @@ def one(s): return s[1:] ``` -`zero()`输入一个字符串`s`。如果第一个字符是`'0'`,则返回字符串的其余部分。如果不是,则返回`None`,Python函数的默认返回值。`one()`做同样的事情,但关注的是第一个字符`'1'`。 +`zero()`输入一个字符串`s`。如果第一个字符是`'0'`,则返回字符串的其余部分。如果不是,则返回`None`,`Python`函数的默认返回值。`one()`做同样的事情,但关注的是第一个字符`'1'`。 假设有一个叫做`rule_sequence()`的函数,输入一个字符串和规则函数的列表,比如`zero()`和`one()`: -- 调用字符串上的第一个规则。 -- 除非`None`返回,否则它将获取返回值并在其上调用第二个规则。 -- 除非`None`返回,否则它将获取返回值并在其上调用第三个规则。 -- 等等。 -- 如果任何规则返回`None`,则`rule_sequence()`停止并返回`None`。 -- 否则,它返回最终规则的返回值。 +1. 调用字符串上的第一个规则。 +1. 除非`None`返回,否则它将获取返回值并在其上调用第二个规则。 +1. 除非`None`返回,否则它将获取返回值并在其上调用第三个规则。 +1. 等等。 +1. 如果任何规则返回`None`,则`rule_sequence()`停止并返回`None`。 +1. 否则,它返回最终规则的返回值。 下面是一些示例输入和输出: @@ -408,7 +412,7 @@ def rule_sequence(s, rules): **练习3**:上面的代码使用循环来实现。通过重写为递归来使其更具声明性。 -我的解决方案: +我的实现方案: ```python def rule_sequence(s, rules): @@ -422,7 +426,7 @@ def rule_sequence(s, rules): 在上一节中,我们重写一些命令性循环成为调用辅助函数的递归。在本节中,将使用称为管道的技术重写另一类型的命令循环。 -下面的循环对乐队字典执行转换,字典包含了乐队名称、错误的所属国家和活跃状态。 +下面的循环对乐队字典执行转换,字典包含了乐队名、错误的所属国家和活跃状态。 ```python bands = [{'name': 'sunset rubdown', 'country': 'UK', 'active': False}, @@ -439,17 +443,17 @@ format_bands(bands) print bands # => [{'name': 'Sunset Rubdown', 'active': False, 'country': 'Canada'}, -# {'name': 'Women', 'active': False, 'country': 'Canada' }, -# {'name': 'A Silver Mt Zion', 'active': True, 'country': 'Canada'}] +# {'name': 'Women', 'active': False, 'country': 'Canada' }, +# {'name': 'A Silver Mt Zion', 'active': True, 'country': 'Canada'}] ``` -看到这样的函数命名让人感受到一丝的忧虑,命名中的`format`表义非常模糊。仔细检查代码后,忧虑逆流成河。在循环的实现中发生了三件事: +看到这样的函数命名让人感受到一丝的忧虑,命名中的`format`表义非常模糊。仔细检查代码后,忧虑逆流成河。在循环的实现中做了三件事: -- `'country'` key的值设置成了`'Canada'`。 -- 删除了乐队名称中的标点符号。 -- 乐队名称改成首字母大写。 +1. `'country'`键的值设置成了`'Canada'`。 +1. 删除了乐队名中的标点符号。 +1. 乐队名改成首字母大写。 -我们很难看出这段代码意识是什么,也很难看出这段代码是否完成了它看起来要做的事情。代码难以重用、难以测试且难以并行化。 +我们很难看出这段代码意图是什么,也很难看出这段代码是否完成了它看起来要做的事情。代码难以重用、难以测试且难以并行化。 与下面实现对比一下: @@ -482,17 +486,17 @@ def capitalize_names(band): return assoc(band, 'name', band['name'].title()) ``` -每个函数都将乐队的一个键与一个新值相关联。如果不改变原乐队,没有简单的方法可以直接实现。`assoc()`通过使用`deepcopy()`生成传入字典的副本来解决此问题。每个转换函数都对副本进行修改并返回该副本。 +每个函数都将乐队的一个键与一个新值相关联。如果不变更原乐队,没有简单的方法可以直接实现。`assoc()`通过使用`deepcopy()`生成传入字典的副本来解决此问题。每个转换函数都对副本进行修改并返回该副本。 -一切似乎都很好。当键与新值相关联时,可以保护原乐队字典免于被修改(`mutation`)。但是上面的代码中还有另外两个潜在的修改。在`strip_punctuation_from_name()`中,原来的乐队名通过调用`replace()`生成无标点的乐队名。在`capitalize_names()`中,原来的乐队名通过调用`title()`生成大写乐队名。如果`replace()`和`title()`不是函数式的,则`strip_punctuation_from_name()`和`capitalize_names()`也将不是函数式的。 +一切似乎都很好。当键与新值相关联时,可以保护原乐队字典免于被变更。但是上面的代码中还有另外两个潜在的变更。在`strip_punctuation_from_name()`中,原来的乐队名通过调用`replace()`生成无标点的乐队名。在`capitalize_names()`中,原来的乐队名通过调用`title()`生成大写乐队名。如果`replace()`和`title()`不是函数式的,则`strip_punctuation_from_name()`和`capitalize_names()`也将不是函数式的。 -幸运的是,`replace()`和`title()`不会修改他们操作的字符串。这是因为字符串在`Python`中是不可变的(`immutable`)。例如,当`replace()`对乐队名字符串进行操作时,将复制原来的乐队名并在副本上执行`replace()`调用。Phew~有惊无险! +幸运的是,`replace()`和`title()`不会变更他们操作的字符串。这是因为字符串在`Python`中是不可变的(`immutable`)。例如,当`replace()`对乐队名字符串进行操作时,将复制原来的乐队名并在副本上执行`replace()`调用。Phew~有惊无险! -`Python`中字符串和字典之间在可变性上不同的这种对比说明了像`Clojure`这样的语言的吸引力。`Clojure`程序员完全不需要考虑是否会改变数据。`Clojure`的数据结构是不可变的。 +`Python`中字符串和字典之间在可变性上不同的这种对比彰显了像`Clojure`这样语言的吸引力。`Clojure`程序员完全不需要考虑是否会改变数据。`Clojure`的数据结构是不可变的。 **练习4**:尝试编写`pipeline_each`函数的实现。想想操作的顺序。数组中的乐队一次一个传递到第一个变换函数。然后返回的结果乐队数组中一次一个乐队传递给第二个变换函数。以此类推。 -我的解决方案: +我的实现方案: ```python def pipeline_each(data, fns): @@ -501,7 +505,7 @@ def pipeline_each(data, fns): data) ``` -所有三个转换函数都可以归结为对传入的乐队的特定字段进行更改。可以用`call()`来抽象,`call()`传入一个函数和键名,用键对应值来调用这个函数。 +所有三个转换函数都可以归结为对传入的乐队的特定字段进行更改。可以用`call()`来抽象,`call()`传入一个函数和键名,用键对应的值来调用这个函数。 ```python set_canada_as_country = call(lambda x: 'Canada', 'country') @@ -539,16 +543,16 @@ def call(fn, key): 上面的实现中有不少内容要讲,让我们一点一点地来说明: 1. `call()`是一个高阶函数。高阶函数是指将函数作为参数,或返回函数。或者,就像`call()`,输入和返回2者都是函数。 -1. `apply_fn()`看起来与三个转换函数非常相似。输入一个记录(一个乐队),`record[key]`是查找出值。以值为参数调用`fn`,将调用结果赋值回记录的副本。最后返回副本。 -1. `call()`不做任何实际的事。而是调用`apply_fn()`时完成需要做的事。在上面的示例`pipeline_each()`中,一个`apply_fn()`实例会设置传入乐队的`'country'`成`'Canada'`;另一个实例将传入乐队的名字转成大写。 -1. 当运行一个`apply_fn()`实例,`fn`和键名并没有在自己的作用域中,既不是`apply_fn()`的参数,也不是本地变量。但2者仍然可以访问。 - - 在定义一个函数时,它会保存这个函数能闭包进来(`close over`)的变量引用:在该函数外层作用域中定义的变量。这些变量可以在该函数内使用。 +1. `apply_fn()`看起来与三个转换函数非常相似。输入一个记录(一个乐队),`record[key]`是查找出值;再以值为参数调用`fn`,将调用结果赋值回记录的副本;最后返回副本。 +1. `call()`不做任何实际的事。而是调用`apply_fn()`时完成需要做的事。在上面的示例的`pipeline_each()`中,一个`apply_fn()`实例会设置传入乐队的`'country'`成`'Canada'`;另一个实例则将传入乐队的名字转成大写。 +1. 当运行一个`apply_fn()`实例,`fn`和`key`2个变量并没有在自己的作用域中,既不是`apply_fn()`的参数,也不是本地变量。但2者仍然可以访问。 + - 当定义一个函数时,会保存这个函数能闭包进来(`close over`)的变量引用:在这个函数外层作用域中定义的变量。这些变量可以在该函数内使用。 - 当函数运行并且其代码引用变量时,`Python`会在本地变量和参数中查找变量。如果没有找到,则会在保存的引用中查找闭包进来的变量。就在这里,会发现`fn`和`key`。 -1. 在`call()`代码中没有涉及乐队列表。这是因为`call()`,无论要处理的对象是什么,可以为任何程序生成管道函数。函数式编程的一大关注点就是构建通用、可重用、可组合的函数所组合的库。 +1. 在`call()`代码中没有涉及乐队列表。这是因为`call()`,无论要处理的对象是什么,可以为任何程序生成管道函数。函数式编程的一大关注点就是构建通用的、可重用的和可组合的函数所组成的库。 -完美!闭包(`closure`)、高阶函数以及变量作用域,在上面几段代码中都涉及了。嗯,理解完了上面这些内容,是时候来个驴肉火烧打赏一下自己。🍣 +完美!闭包(`closure`)、高阶函数以及变量作用域,在上面的几段代码中都涉及了。嗯,理解完了上面这些内容,是时候来个驴肉火烧打赏一下自己。🍣 -还差一段处理乐队的逻辑:删除除名字和国家之外的内容。`extract_name_and_country()`可以把这些信息提取出来: +最后还差实现一段处理乐队的逻辑:删除除名字和国家之外的内容。`extract_name_and_country()`可以把这些信息提取出来: ```python def extract_name_and_country(band): @@ -569,6 +573,9 @@ print pipeline_each(bands, [call(lambda x: 'Canada', 'country'), `extract_name_and_country()`本可以写成名为`pluck()`的通用函数。`pluck()`使用起来是这个样子: +> 【译注】作者这里用了虚拟语气『\*本\*可以』。 +> 言外之意是,在实践中为了更具体直白地表达出业务,可能不需要进一步抽象成`pluck()`。 + ```python print pipeline_each(bands, [call(lambda x: 'Canada', 'country'), call(lambda x: x.replace('.', ''), 'name'), @@ -578,7 +585,7 @@ print pipeline_each(bands, [call(lambda x: 'Canada', 'country'), **练习5**:`pluck()`输入是要从每条记录中提取键的列表。试着实现一下。它会是一个高阶函数。 -我的解决方案: +我的实现方案: ```python def pluck(keys): @@ -593,7 +600,7 @@ def pluck(keys): 函数式代码与其他风格的代码可以很好地共存。本文中的转换实现可以应用于任何语言的任何代码库。试着应用到你自己的代码中。 -想想玛丽、伊斯兰和山姆。转换列表迭代为`map`和`reduce`。 +想想特工玛丽、伊丝拉和山姆。转换列表迭代为`map`和`reduce`。 想想车赛。将代码分解为函数。将这些函数转成函数式的。将重复过程的循环转成递归。 @@ -605,10 +612,14 @@ def pluck(keys): **注:** -1. [^](#note_mark1) 不可变数据是无法更改的。某些语言(如`Clojure`)默认就是所有值都不可变。任何『变更』操作都会复制该值,更改副本然后返回更改后的副本。这消除了不完整模型下程序可能进入状态所带来的`Bug`。 -1. [^](#note_mark1) 支持一等公民函数的语言允许像任何其他值一样对待函数。这意味着函数可以创建,传递给函数,从函数返回,以及存储在数据结构中。 -1. [^](#note_mark1) 尾调用优化是一个编程语言特性。函数递归调用时,会创建一个新的栈帧(`stack frame`)。栈帧用于存储当前函数调用的参数和本地值。如果函数递归很多次,解释器或编译器可能会耗尽内存。支持尾调用优化的语言为其整个递归调用序列重用相同的栈帧。像`Python`这样没有尾调用优化的语言通常会限制函数递归的次数(如数千次)。对于上面例子中`race()`函数,因为只有5个时间段,所以是安全的。 -1. [^](#note_mark4) 柯里化(`currying`)是指将一个带有多个参数的函数转成一个函数,这个函数接受第一个参数,并返回一个接受下一个参数的函数,依此类推所有参数。 -1. [^](#note_mark5) 并行化(`parallelization`)是指,在没有同步的情况下,相同的代码可以并发运行。这些并发处理通常运行在多个处理器上。 -1. [^](#note_mark5) 延迟评估(`lazy evaluation`)是一种编译器技术,可以避免在需要结果之前运行代码。 -1. [^](#note_mark5) 如果每次重复执行都产生相同的结果,则过程就是确定性的。 +1. [^](#note_mark1) 不可变数据是无法更改的。某些语言(如`Clojure`)默认就是所有值都不可变。任何『变更』操作都会复制该值,更改副本然后返回更改后的副本。这消除了不完整模型下程序可能进入状态所带来的`Bug`。 +1. [^](#note_mark1) 支持一等公民函数的语言允许像任何其他值一样对待函数。这意味着函数可以创建,传递给函数,从函数返回,以及存储在数据结构中。 +1. [^](#note_mark1) 尾调用优化是一个编程语言特性。函数递归调用时,会创建一个新的栈帧(`stack frame`)。栈帧用于存储当前函数调用的参数和本地值。如果函数递归很多次,解释器或编译器可能会耗尽内存。支持尾调用优化的语言为其整个递归调用序列重用相同的栈帧。像`Python`这样没有尾调用优化的语言通常会限制函数递归的次数(如数千次)。对于上面例子中`race()`函数,因为只有5个时间段,所以是安全的。 +1. [^](#note_mark4) 柯里化(`currying`)是指将一个带有多个参数的函数转换成另一个函数,这个函数接受第一个参数,并返回一个接受下一个参数的函数,依此类推所有参数。 +1. [^](#note_mark5) 并行化(`parallelization`)是指,在没有同步的情况下,相同的代码可以并发运行。这些并发处理通常运行在多个处理器上。 +1. [^](#note_mark5) 惰性求值(`lazy evaluation`)是一种编译器技术,可以避免在需要结果之前运行代码。 +1. [^](#note_mark5) 如果每次重复执行都产生相同的结果,则过程就是确定性的。 + +----------------------- + +![](lazy-small.jpg) diff --git a/a-practical-introduction-to-functional-programming/lazy-small.jpg b/a-practical-introduction-to-functional-programming/lazy-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..33d38e03ce183eb031f1650c1b4f5f53bf228af3 GIT binary patch literal 27378 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 W^=}+bUi>8x15R0|6ZZQ%|Gxlwl2pzB literal 0 HcmV?d00001 diff --git a/a-practical-introduction-to-functional-programming/lazy.jpg b/a-practical-introduction-to-functional-programming/lazy.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d17d6e86756c3a4215fd386f9c1d2da8426606a5 GIT binary patch literal 123601 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

^oei!)khqa+IU3z;qb|v6lm=9 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 !7~Pq3`$=4iy*B@#RmJiiSYE82KuL@vpw^ZxeP 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�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

Z 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

F&mv$$rQLfpfA zupx4Sy4uM)a$rzxc&R}YXe&tl%ulmzCnYue>pN{ustL-3MJ|Y{rTwoB z=5x{+s;;9MOL6U2p233w5Sg~MZscG99nZGtIwZr>Y0EN4g8DVye{2B%vnb{N&v6TL zg5-<&Y(cS;=`2A}3ilYq99=loiKvP?+L#L65svm(oDG+Io#?}$O7j581P0>Qpo?=#Q#$R=fCxH{`)C&RvJ!4zx8Z% z_?J>^-~d_3hdXS?y4(@6i7qKlZ0nhV<8{xleO1>h)}s$M<1VtRrGHYu4Jh~WF*l<( zRq8j9c1E*^a}K|LFN^jtK}Uh+Le1G|SqzSvFD~~&aMgzu5yzyWLaq6OC9qyr zY?zdJ&39cg1Cj2rjw=nT+whVSu2NHP*_Vx+T#!DS}MPP&&h9y z@U>F#VvP3eG8hmFQx#?)ta*FtT1D;UCk+1U^u^PVP}G=hlBG4bro^b`jZyA*pSEhZ zjV&A222X0e0T?xp5m>QedO2x@1)=(3^%@aME)ZVlfsWt`pJnk!m#)3Qg|FD5#ztVW zjDXx8m71f!(LPll7F48?A4AU!(5DI@9l*wvJLJ`<6biYW)$PzrthZmMe+#Z&C{v_e5#4@M^hP%a00@4}0H)VMMxx z$FNXp-Ofjeo11-OA^P`Df@wLsgsP?rLUlpxUf!sOzF~X`p5?y?f!q) z()&LP$ycj6w;*f1u^o7xBg)?HF#Wtp@Rk9VSjCK|KpWt^N`iV?l>mF7mBvX$s)Qmc zY5|(*a1C0F#kNqL*>E!it)=xc^qI@q$^UDMy>KG73KGw2BjsQ=U_h}!vBIT+%cy<6PE*s0VOPrk}D5fl* zH1mMM=EwrgJPvdsNaS2uCQom4(O|-XoJrAaq+|zVglIjBA%GjGOr}Ve)DLTOsMfGV zq|7a{VnTjIFC92}ilM)_GP-(vuNOWj7bvXmtu~z?@;AV2dd#h-{)Fe*QQyL&|2RoT zSmqq(F*vz>s^UEd<9xI&Z^f>!mxGlpMR3(B*EaXsX6Sn3fJBF{hDvp9)nAC^A46}}$5V@|o`|t4dO=f!>Qh&v=*yQ}o5&=r zz?Beg^+(`H~{lr6J4XLvVZp$2!7Oqxi`JcQIzfy zwVBU4$KI>XTzOZ08jz!0Glg@!%+3O*_T66_R0pG3sJ}9cU&ptI9Fq>sR#$8%vwq86 zFYo0^)$zqjUMB^$yV*KYjnWq$Jazv)_k+?Ymbd!#w4s;tagGW~ik$kBIQzhj_Y1er z#d1pTIb&>(Ok4NN9(+BM1tdg)XL{HXC zEMMLN+8;C}WtS^Mb4~Z`OXP=JvVPKFEgH{zIm1mV-fH?>fhQQ*N8+T=B5ZrMw$LX} z*SfOmcIABDU{7`x4CpP9WSPT#3-=q^Up0+&EFz6{QKbHSASjr=c|(5cj$51g{s&V) z!eHm?%V8s+!;o=ikwREbTl(+l{-}S#_P@l_S90lTjfGGW#H{P(%Wg^)0$=dB<%D@0 z(;P$Aa}4!39MN9@+*PV6#-h>p-yBb^U_|mUgPQWiw6`OI6{uNrS&n|2UZ|PyyK?6-m9d8%=TI5vXq11-<2_k8 z)yWt7)305k!MEqjwXC&?q%YS(YetF+1sPKqE+e^jwZFeAY9i}56Xz64x7CC+@7Z-J zjr^sl7Rt5$o(MrCUNKG zqguUCk1MT~H*+XZc_G!{^OS$_24kcNm4fky#LlmO588e( zma7Y_?_NW`>&B!!pnd#Z)0-D)DLTW??J02qH;g=uQLN&j^KJj#HY;YiVHCQzcr;pAen?04_ke?~xbaWMc4k)_xqlpXcCh6l%EFH=z4L2YRJf)|4 zw=sBj${pVE`gx)cQL*o3cub6|Y2TDVx8C-8^EILjCBTRH7cV-H=2p?`bFbnx75H92 z@s~iv18dY11}YtejmOcUC%ic~W}#pI^D*@4!~V?bQ-9tzQ_E)|EXH)Y6%iL`?$W{~ zH4Z*2p<6bt+gJe?+|HLO?}mPL8W8lE z4ZP&H#sBVMbgJZxanS*%m({f;X8B-&xt`fmH0fWwp^IPt;`t8T!{2%k^PDFyjcG_R#=F8h=^}R1xt@W;x4s_R2y`rs&`NM&ViAxG; zp}QK_!%LThg=Z}pgP|LN?xF3rAp^B7`0)R?uV<}M|IeQoJgom+omXb!wthxUL5X~9 z##Jf*WIx=4C!sO-aOpRMc8|pl@ta9h8&Sw|-lX|u3n@Bu?m6DNQN&`SSm z%)OwSRir8QRL(}@?6ebU#x5-rYgrh0FDid!`tB~1wof$5>9mYPhSc@lxm}aiuL|6@ zOy&3rA&ElYHy%N^pV%eq?kWYIVzur#u-hfC_ifYKnBFY^jq9sqs^+S#lni_&psGA` z`>nv7%)qLN4NN-jezW2a+=|?CfAa=0lV#B+FO7I#3a(ruB=qRlSKHm+W$GW9Upgjx z#jRo0)t-K*!kgD#zntzhSM-qcTAfbU?S>QIO}@X9flF3k&Gf^co8Q!EAI>|!JhEfz z$)HsKQ6-au{;8~x@?hEP=j&eE1>ZTq zYR|QjxiV{a{^7NU&ds`#cAE2K{VAo_YE>awziRsyuPd3lKv(sp*p2z_2P(>DI=Kce z&RX=EXZlPjIRBAFMwe~#zv;{18?QHB1}>j zzBPQY?@ZCX%j@);9kL=Po+)h+pYe10sw*zheKL=pACz|dHRn|8ocFJTw(~t)vEpC6 zT6?HZ$qD<%x@xz!haWFstPHoAaK7l7kNU$?4-d!ef8??zczvYKr0v0acUGFLeyOj% zV)9$553?_XO^Ht0-C-cAW*fLfC@>7T!f#S^y?xTZ1&o4k%Ipo@AN!p_Y<_5BS$EZ|Z2yYIK{w)7w;S`WyBgFOkUY)BbYfMR5pb*c z=?mF^nKHP&Z;5VN9$@mgfA-=<%U){Lw62);`FEMBM#pxgFASnqtrKtYeZAnopcm@E oz%tkn>PZv~iSysY-l-9j>fgP8#}7RR2F3@>uAd%Utp9%#0Boy|YXATM literal 0 HcmV?d00001