函数式编程中一切皆是函数,函数的同一个输入产生的结果是确定的,不依赖于外部状态 。
所有的变量可以看作不可改变的,因此无法保存状态。
函数式编程的重点是定义而不是状态机的实现,而普通的过程式编程正好相反。
函数式程序中各语句不一定严格按顺序执行,但不影响结果,这种无序化正是并行运算的基础,是天然逻辑分离的。
closure :函数式强调无状态,但closure用于实现状态 。
continuation :将结果作为参数传给下一个函数 , 类似于返回地址的跳转,在函数返回时将结果作为参数调用下一个函数,用于实现有序化。
currying : 快速简易的创建数据封装,类似adapter模式,用于实现接口转换 。