Scheme是Lisp系列中的一种函数式编程语言,它以lambda演算与eager(applicative-order)评估密切相关。有关URL方案的问题,请使用标记“url-scheme”。
我正在尝试定义登录方案。例如,如果 (log (exp 1)) ;=> 1.0 那我怎么写log5(25)呢?
我正在阅读一本关于 Scheme 的书,其中介绍了我使用 writeln 函数的方法。它希望我能够给它一系列的字符串和变量,然后它会像这样输出到控制台。 (写...
我正在阅读一本关于 Scheme 的书,其中介绍了我使用 writeln 函数的方法。它希望我能够给它一系列的字符串和变量,然后它会像这样输出到控制台。 (写...
我正在阅读《Scheme与编程艺术》一书,但对下面的问题想不出答案。如果r是(escaper(lambda(continuation)(continuation body))中的(......(callcc r)......。
`cdr`的`set-car!`也会改变`car`,为什么?
(define l '(a)) (define p (cons l l)) (set-car! (cdr p) 'b)在最后一个(set-car! (cdr p) 'b)之后,p将是((b) b)而不是((a) b)。为什么会这样?
我正在学习LYAHFGG中关于代数数据类型的第8章,当我试图实现类似Scheme的列表操作时,遇到了一个障碍。我的想法是尝试在Pair adt上建立cons、car、cdr,然后 ...
如何用Racket重写递归过程(重复f n)作为一个迭代过程?
这是我对递归过程(repeat f n)的处理方法,它将函数f n次应用于一个参数:(定义(repeat f count) (if (= count 1) f (lambda (x) (f ((...))。
可能与DrRacket中的Macro stepper重复,但我的问题是 "为什么我的Macro stepper中没有 "上一术语 "和 "下一术语 "按钮?我注意到这里:http:/www.ccs.neu.eduhome...
试图用累积递归来做这个'(3 2 1) -> '(6 3 1),我可以得到我想要的结果(某种程度上),我的意思是,我的首字母和休止符似乎是以正确的顺序,但我的(缺点 ...
为什么这个太阳系的数值积分一直在运行?(MIT-scme SCMUTILS)
我想做一个太阳系的数值积分。我以前用普通的Scheme做过,现在我想用麻省理工学院非常有趣的SCMUTILS-library来做。我做了什么。我把太阳能...
我开始学习Scheme,偶然发现了这个奇怪的事情:给定以下过程:(定义(测试x y)(如果(= x 0)0 y ))。当我创建一个条件时,它的评价是 "如期",当我 ...
比如((fn-stringappend string-append) "a""b""c")我知道怎么处理(f x y z)。但是如果参数数量未知怎么办?有没有什么方法可以处理这种问题?
我是Chez的新手,我只是想了解一下现有的各种维护和不维护的仓库。是否有一个通用的首选源码来获取R6RS SRFI库(...
我是Scheme语言的新手,我试图建立一个方法,它得到一个列表和一个数字'n'作为参数,并返回所有大小为n的子列表。例如,如果该方法收到'(a b c d)和2,它 ...
我有一个简单的函数,我用它来缓存值。我使用一个哈希表作为缓存。缓存将从不同的线程中访问,我想使用原子框来控制从 ...
我正试图在scheme中实现一个解释器。现在我实现了其中的一部分,但是我在 "if "语句上遇到了问题。下面是语法。 这是我目前写的代码:
我如何在方案中写出自己的eqv或equal? 我是否只需要做一个cond,然后查找符号、数字等,并返回相应的#t或#f?
我现在正在读《Realm Of Racket》这本书,到目前为止我非常喜欢这本书。但是,在第4 12章第74页,有一个代码例子,我就是不明白。也许我的大脑拒绝弄清楚......。
我是一个Racket初学者,我想用hash-update!来更新一个哈希表,其中的值是一个可变的集合。以下是代码行: (hash-update!hash key (curryr set-add!new_val) (......)