Scheme 小阴谋家-语义
我刚开始读《小阴谋家》。我在理解一些单词时有些困难 第27页说 情商法则? 原始情商?接受两个参数。每个必须是一个非数字原子。” 一个脚注说:在实践中,一些数字可能是情商的参数 我使用racketminimal作为我的方案解释器。它计算Scheme 小阴谋家-语义,scheme,racket,the-little-schemer,Scheme,Racket,The Little Schemer,我刚开始读《小阴谋家》。我在理解一些单词时有些困难 第27页说 情商法则? 原始情商?接受两个参数。每个必须是一个非数字原子。” 一个脚注说:在实践中,一些数字可能是情商的参数 我使用racketminimal作为我的方案解释器。它计算(等式10)到#t 玩具一章中有许多类似的问题 作者所说的必须(标记为粗体)是什么意思脚注?传统的做法是在指针本身嵌入一些原始数据类型,例如低整数和字符,使这些数据类型eq?即使数据在源代码的不同时间/点出现在源代码中。然而,数字可以是任意大小,所以即使数字达到
(等式10)
到#t
玩具一章中有许多类似的问题
作者所说的必须(标记为粗体)是什么意思脚注?传统的做法是在指针本身嵌入一些原始数据类型,例如低整数和字符,使这些数据类型
eq?
即使数据在源代码的不同时间/点出现在源代码中。然而,数字可以是任意大小,所以即使数字达到某个特定的实现依赖性当你尝试(eq?10000000001000000000)
时,在32位系统上可能是#f
,而在64位系统中可能是#t
,而(eqv?1000000000)
在任何系统中都是#t
。Scheme的真实身份谓词是eqv?
Eq?
是一个优化版本,当应用于数字、字符或过程时,它可以报告#f
而不是#t
。大多数Eq?
的Scheme实现在小范围内做正确的事情数字(称为“fixnums”)、字符和过程,但更大的数字或其他类型的数字会有所下降
所以说“必须”意味着如果你对一个数字应用
eq?
,你只能得到部分可预测的结果;脚注意味着在某些情况下(通常包括10)你会成功的。有关各种方案对FixNum的实际作用的详细信息,请参阅R7RS开发站点。关于cons
的内容如何。它说第二个表达式必须是一个列表。但是(car(cons'a'b))计算结果为“a”。您能解释一下吗?cons
创建一个对。它是car
和cdr
可以是任何类型,但只有当cdr
为null?
或list?
时,结果才能被称为正确的列表。list?
是当链中的cdr
为对且最后一个是null?
。在它的cdr
中不以null?
结尾的列表称为点列表,例如(ab.c)
(list?'(ab.c))=>#f
+1了解。找到了一个20分钟的scheme教程,在使用TLS之前可能需要阅读。Thanks@silentboy小方案的方法是同化。它不能解释太多,并期望你最终得到它。如果这是你的第一种编程语言,它可能最有效,因为从那时起,你不需要寻找变异或变异我喜欢Abelson和作者Sussman的作品。我听说SiCp是一本不错的书。但是,我决定先读TLS,经验丰富的阴谋家。这是一条正确的道路吗?我认为自己擅长C.。