问题标签 [sicp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
428 浏览

recursion - 如何改进这段代码?

我对 SICP练习 1.11的解决方案是:

正如预期的那样,(f 100)之类的评估需要很长时间。我想知道是否有办法改进这段代码(不考虑递归),和/或利用多核盒子。我正在使用'mit-scheme'。

0 投票
3 回答
654 浏览

scheme - 我如何从 SICP 调用方案编号函数

在 SICP 中,(ex 2.6)以下功能被描述为“无数字生活”的方式。我正在努力理解这一点。作为起点,如何调用这些函数?我真的可以以某种方式应用它们,输出为 1 吗?(或任何其他数字?)

我最初的尝试没有成功:

0 投票
5 回答
2397 浏览

terminology - “数据只是愚蠢的代码,代码只是智能数据”是什么意思?

我刚刚在计算机程序的结构和解释中遇到了一个想法:

数据只是愚蠢的代码,代码只是智能数据

我不明白这意味着什么。有人可以帮助我更好地理解它吗?

0 投票
6 回答
5316 浏览

math - 计算机程序的结构和解释,需要什么水平的数学能力?

遗憾的是,我从 16 岁(GCSE 级别)开始就没有学习数学,我现在是一名 27 岁的 C# 开发人员。尝试通过计算机程序的结构和解释(SICP) 进行工作会是徒劳的吗?

读者期望什么样的数学标准?

0 投票
3 回答
4068 浏览

functional-programming - SICP DrScheme 中的哪种语言?

我一直在 DrScheme 4.2 中使用 SICP 模块,但在 DrScheme 中哪种语言对 SICP 的支持最好?

这里有人试过吗

谢谢。

0 投票
1 回答
152 浏览

text - scp 第 4.1.6 节

我需要一些帮助来理解 SICP 关于内部定义的第 4.1.6 节中的材料。

我理解定义相互递归函数时提出的问题。但我不明白如何通过转换以下 lambda 表达式来解决它

进入:

有人可以帮我吗?谢谢。

0 投票
2 回答
338 浏览

c - 建议阅读顺序和其他问题

根据 StackOverflow 播客第 57 集的建议,我购买了“计算机程序的结构和解释”、“C 编程语言”、“Unix 编程环境”和“算法简介”。我想提高我的基本编程技能,为一些开源项目做出贡献,并改善我未来的就业前景。所选文本是否有建议的阅读顺序?另外,我应该更加注意书中的哪些特定主题/部分?谢谢。

0 投票
5 回答
12668 浏览

lisp - 我可以将 Common Lisp 用于 SICP 还是 Scheme 是唯一的选择?

另外,即使我可以使用 Common Lisp,我应该吗?方案更好吗?

0 投票
6 回答
946 浏览

scheme - 小型 SICP/方案问题(当地州)

我实际上是为了好玩而阅读这本书,但它可能被视为家庭作业。无论如何,我对这种语言的局部状态变量完全不满意......以这段代码为例:

为什么这段代码在 1 和 0 之间交替出现?每次调用此函数时,count 的值都为 0!一个python等价物是:

这每次都会返回相同的内容。我很困惑...

0 投票
6 回答
11005 浏览

recursion - SICP中练习1.6的解释是什么?

我刚刚开始学习 SICP(我自己;这不是为了上课),而且我已经在练习 1.6 上苦苦挣扎了几天,我似乎无法弄清楚。这是 Alyssa 根据 重新定义if的地方cond,如下所示:

她在一些简单的情况下成功地对其进行了测试,然后用它重新编写了平方根程序(与 一起工作得很好if):

然后问题问:“当 Alyssa 尝试使用它来计算平方根时会发生什么?解释一下。” [如有必要,我很乐意重现其他程序(good-enough?improve等),请告诉我。]

现在,我知道会发生什么:它从不返回值,这意味着程序无限递归。我只是无法解释为什么会发生这种情况。无论我之间存在什么细微差别,ifnew-if都无法理解。非常感谢任何和所有帮助。