函数式编程(英语:Functional programming)或者函数程序设计,又称泛函编程,是一种编程范型,它将电脑运算视为数学上的函数计算,并且避免使用程序状态以及易变对象.函数编程语言最重要的基础是λ演算(lambda calculus).而且λ演算的函数可以接受函数当作输入(引数)和输出(传出值). 从具体的编程语言实现来来看,数据的不变性,一等函数,高等函数,lambda运算,闭包,惰性求值.另外函数式编程大量使用递归,但是递归效率很低,因此出现了尾递归来优化.除了这些通用的特性以外…