文章目录
一、前言
从这篇文章中,你将了解到函数式编程的核心远侧、以及如何在编程中练习。你也将学习到一些高级的函数式编程的技巧。
二、什么是函数式编程
一般来说,函数式编程是一种写代码的风格,对待计算就像数学函数一样。那么什么是数学函数呢?
一个函数就是一个表达式,将输入和输出联系起来。
重要的是,输出只依赖于输入。更有趣的是,我们可以组合两个或者多个函数在一起,来产生一个新的函数。
2.1 lambda 演算
为了理解为什么这些定义和数学函数在编程中的重要性。我们把时间往前拉一点,在1930年,数学家Alonzo Chruch发明了一个正式的系统,用来表达计算,并且基于抽象函数。这个通用的计算模型后来就成了lambda演算。
lambda演算对编程语言理论的发展影响极其重大,尤其是函数式编程。典型地说,函数式编程语言是实现了lambda演算。
因为lambda演算聚焦于函数的组合,函数式编程语言提供了有表现力的方式通过函数组合来组合软件。
2.2 编程模式的分类
当然、函数式编程并不是唯一一种编程类型。广义上讲,编程风格可以被分为命令式编程和声明