2

我最近开始学习函数式编程并开始使用 Haskell。函数范式与其他范式的根本区别在于,我们不维护状态,也没有命令范式中的计算。命令式编程背后的基本理论是自动机理论,而自动机理论是计算机的基础。

话虽如此,我看不出自动机理论和函数式编程之间有任何关系。那么函数式编程是否彻底改变了编程的基础?

4

1 回答 1

3

大约与图灵机开发的时间相同(我只是猜测您指的是 TM,当您说自动机理论是计算机的基础时)也建议将 lambda 演算作为计算模型(好吧,不完全是计算机,但接近)。这两个概念被证明是等价的,即任何可以在 TM 上“实现”的东西也可以通过 lambda 项“实现”,反之亦然。此外,函数式编程或多或少是(类型化的)lambda 演算的实现。所以我想这只是看待同一件事的两种不同方式。

于 2015-02-02T16:40:11.187 回答