【问题标题】:Automata theory and Functional programming自动机理论和函数式编程
【发布时间】:2015-02-02 16:32:09
【问题描述】:

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

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

【问题讨论】:

    标签: functional-programming finite-automata imperative-programming


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-24
      • 1970-01-01
      • 2019-08-10
      • 2015-09-22
      • 1970-01-01
      • 2010-09-06
      • 2016-10-04
      相关资源
      最近更新 更多