为什么我的连续分数不能正确近似?
阅读更多 SICP,我陷入了 练习 1.3.8。我的代码对于近似 1/phi 可以正常工作,但对于近似 e - 2 不起作用。 (define (cont-frac n d k) (define (frac…
在Scheme中是否有Common Lisp的*print-circle*的等价物?
我正在Scheme(SICP练习3.23)中研究双端队列,并且我有一个简单的双向链表实现,我想测试一下,但我似乎不知道如何在中打印出循环列表方案(mit-sche…
如何在 guile 中创建 cairo 曲面
我有这段代码 guile> (cairo-pdf-surface-create "foo.pdf" 100.0 100.0) and get this error standard input:29:1: In procedure cairo-pdf-surfa…
两个字符串的最长公共子序列的长度
我正在尝试编写一个函数来计算两个输入字符串 str1 和 str2 的最长公共子序列的长度。 这就是我现在所拥有的, (define LCS (lambda (str1 str2) (if …
SICP、Scheme、DrRacket 问题:定时器/分析器功能?
我目前正在尝试做练习1.22,它需要一个名为runtime 的函数,它返回系统已运行的毫秒数。然而我的环境(R5RS)似乎没有这个。它也没有时间、当前毫秒、…
Common Lisp 中的原子和符号有什么区别?
在 Common Lisp 中称为原子的东西和符号之间有什么区别吗? 这些差异是否也适用于 Lisp 家族中的其他语言? (我知道原子在 Clojure 中具有不同的含义…
call-with-current-continuation 只能用 lambda 和闭包来实现吗?
有谁知道 call/cc 是否可以只用 lambda 和闭包来实现? 看起来 call/cc 会中断程序的流程(就像异常一样),但 lambda 和闭包无法做到这一点。因此我…
为什么promise不是Scheme中的数据类型?
在Scheme中delay返回的对象是“一个promise”,但是promise不被认为是一种类型(所以没有promise?过程,并且它没有被列为R5RS 或 R6RS 中的一种类型…
PLT Racket 多个值的测试用例
我似乎无法使用 test-engine/racket-tests 包测试我在 PLT Racket 中编写的函数。 代码如下所示。它返回多个值(不知道为什么他们不称它们为元组)。 …