我已经开始阅读《计算机程序的结构和实现》,在它的第一个练习(https://mitpress.mit.edu/sites/default/files/sicp/psets/ps1/readme.html)中,它讨论了文本编辑系统Edwin。我正在使用DrRacket,因为我认为它是现代Windows 10的理想替代Edwin的替代方法。但是,我看不到与以下有关环境的任何等效信息:
ENVIRONMENT named: (user)
p1 = #[compound-procedure 31 p1]
p3 = #[compound-procedure 32 p3]
p2 = #[compound-procedure 27 p2]
==> ENVIRONMENT created by the procedure: P1
x = 1
y = 2
我在哪里可以找到有关环境本身的信息,而不仅可以访问堆栈和变量,尤其是因为在练习中它说将更彻底地探索环境,并且我想知道DrRacket是否确实在足以让我在整本书中使用,还是对另一个IDE感到满意?
答案 0 :(得分:0)
是的,DrRacket足够好。我已经完成了本书中几乎所有的练习,并且只使用了DrRacket。您可以对DrRacket使用SICP package,以便使语言与本书中的SICP方案更加匹配。这还将增加对第2章中练习的支持。
您不需要查看DrRacket中的环境。在第3章中,您将遇到环境图-但这些是铅笔和纸练习。在第4章中,您将自己实现环境,作为实现方案的一部分。当谈到探索环境时,它可能意味着从学术角度探索评估的环境模型(这是什么?为什么要拥有它?它的优缺点是什么?)。
我不熟悉“样本编程作业”,除了包含有用的材料外,它们还可能使事情复杂化。例如。我注意到1.1代码使用的lambda直到本书中的1.3才引入。