相关疑难解决方法(0)

什么是'关闭'?

我问了一个关于Currying和关闭的问题.什么是关闭?它与currying有什么关系?

computer-science glossary functional-programming terminology

403
推荐指数
10
解决办法
12万
查看次数

Scheme中的闭包与其他语言中的常规闭包有什么区别?

我正在学习SICP。而且我发现的定义在SICP是(也许)从其他语言的闭包定义不同。

这是SICP所说的:

创建元素为对的对的能力是列表结构作为表示工具的重要性的本质。我们将此功能称为cons的闭包属性。通常,如果可以使用相同的操作将事物与该对象合并的结果本身进行合并,则用于合并数据对象的操作将满足闭包属性。

我认为这里的闭包更接近于数学中的闭包,而不是我在JavaScript中看到的闭包,这意味着函数可以访问封闭的环境变量。

我错了吗?

scheme closures functional-programming sicp

6
推荐指数
2
解决办法
907
查看次数

了解 LISP 中的绑定变量和自由变量

我正在阅读SICP,并且出现了绑定变量和自由变量的主题。然而,我对此感到困惑。术语“绑定变量”仅适用于形式参数变量吗?此外,文本还指出过程定义“绑定”其形式参数。这让我感到困惑,因为有些人说我们将值“绑定”到变量。显然,当我们谈论不同类型的变量时,该术语似乎意味着不同的事物。有人可以澄清什么是绑定变量以及绑定的含义吗?最后,与绑定变量相比,什么是自由变量?所有这些与范围有何关系?

lisp scope sicp

4
推荐指数
1
解决办法
1051
查看次数