关键词:运算、转换、扩展、封装。

函数式编程是围绕高阶函数进行的,设计的核心在于高阶函数的设计。

 

1、函数式编程通过函数的复合生成更大的结构;

2、函数的操作分为分解和复合;分解即为柯里化,可以分为偏函数分解和彻底分解。复合即为待定系数和调用约定。

3、函数的运算最终转化为代数运算。

4、monad的本质是简化版的对象,与闭包类似;对基础数据和操作进行封装,便于更高级别的操作。

5、高阶函数的阅读关键在于识别函数:入参、出参、函数名、实现、调用关系。

6、函数作为构建单元,具有混入和可替代性。

7、需要了解不同语言的语法。

8、区别同步调用、异步调用。

9、理解待定参量或依赖参量与形参;理解形参与实参。

10、构建依赖函数的运算与形参,运行时会将形参实参化,中间形态的形实参也会全部落实。

11、理解偏函数对于高级函数的作用。

12、基于monad的封装与解封。

13、monad只是运算域转换的工具,将编写、阅读困难的基础域转化为与之相反的高级域。

14、高阶函数是函数式语言生长的关键,包含了复合与扩展法则。

15、区别通用函数与功能函数;功能函数与通用函数的抽取。

------------------越是喧嚣的世界,越需要宁静的思考------------------ 合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。 积土成山,风雨兴焉;积水成渊,蛟龙生焉;积善成德,而神明自得,圣心备焉。故不积跬步,无以至千里;不积小流,无以成江海。骐骥一跃,不能十步;驽马十驾,功在不舍。锲而舍之,朽木不折;锲而不舍,金石可镂。蚓无爪牙之利,筋骨之强,上食埃土,下饮黄泉,用心一也。蟹六跪而二螯,非蛇鳝之穴无可寄托者,用心躁也。