Scheme 小阴谋家-语义

Scheme 小阴谋家-语义,scheme,racket,the-little-schemer,Scheme,Racket,The Little Schemer,我刚开始读《小阴谋家》。我在理解一些单词时有些困难 第27页说 情商法则? 原始情商?接受两个参数。每个必须是一个非数字原子。” 一个脚注说:在实践中,一些数字可能是情商的参数 我使用racketminimal作为我的方案解释器。它计算(等式10)到#t 玩具一章中有许多类似的问题 作者所说的必须(标记为粗体)是什么意思脚注?传统的做法是在指针本身嵌入一些原始数据类型,例如低整数和字符,使这些数据类型eq?即使数据在源代码的不同时间/点出现在源代码中。然而,数字可以是任意大小,所以即使数字达到

我刚开始读《小阴谋家》。我在理解一些单词时有些困难

第27页说

情商法则?

原始情商?接受两个参数。每个必须是一个非数字原子。”

一个脚注说:在实践中,一些数字可能是情商的参数

我使用racketminimal作为我的方案解释器。它计算
(等式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.。