3

我尝试研究更严格的编程主题,因为我意识到那里有许多我一无所知的范例。我关注了 SICP 和计算机科学基础等书籍。我现在正在以一种正式的、面向证明的方式学习算法。当我学习 Quicksort 时,我意识到我不知道如何用函数式语言来实现它。这是一种就地排序算法,但我如何在没有变异的情况下实现这一点超出了我的范围。

也许有一个简单的答案,我还不知道很多实际和理论概念。但我读到函数式语言是基于 lambda 演算的,它的功能相当于图灵机。我在 Haskell 中找到了一个实现,但我不知道 monads,希望我最终能学会。

那么你能用尽可能简单的术语解释一下这是怎么可能的吗?lambda演算本身有变异的概念吗?不要太苛刻,因为我不太了解 lambda 演算,只是在 Scheme 中编程。一个是或否的答案加上一点解释就足够了。

4

1 回答 1

1

lambda演算本身有变异的概念吗?

不,没有突变的概念。您只需拥有函数应用程序 (apply) 和函数抽象 (lambda)。

于 2014-10-15T12:03:53.540 回答