方案 - 关于新类型的一般问题
我们能否在Scheme中定义新类型,以便Scheme能够识别它们并 强制执行它们的不变量? 换句话说,当我定义圆的ADT(make_circle、get_radious等)时,我…
Scriptfu 没有按正确的顺序执行,为什么?
我正在尝试为 GIMP 编写一个基本脚本,但它似乎无法正常工作。在我做出选择后,它应该遵循以下顺序:降低活动层,将选择范围扩大 2px,用前景色填充,…
在递归调用Scheme过程中,let创建的局部变量的状态会改变吗?
例如, 我想检查一个元素是否在列表中。该算法很简单,让我们用 C++ 来实现, bool element_of( const std::vector<int>& lst, int elem ) { f…
“let”在Scheme 中如何工作?
我使用 let 创建一个临时变量,然后在下一条语句中使用这个临时变量。然而,DrScheme 抱怨道, let: bad syntax (not an identifier and expression f…
“if”语句在Scheme 中如何工作?
这是我目前正在自学计划的链接,http://www.ccs.neu.edu/home/dorai/ty-scheme/ty-scheme-ZH-1.html 据作者介绍, 然后我尝试了一个最小的示例 (defin…
帮忙解释一下Scheme中的“cons”是如何工作的?
这是删除列表最后一个元素的函数。 (define (remove-last ll) (if (null? (cdr ll)) '() (cons (car ll) (remove-last (cdr ll))))) 因此,根据我的理…
针对方案中的列表列表运行查询
我被困在我的项目中。我有一个列表列表,例如: '((a for apple) (b is book) (c in cat) (ronn live in NY)) 现在我想以列表的形式进行查询,并让它…
如何在Scheme中的do循环中使用多个语句?
问题 计算列表中出现的次数,它们必须是相邻的。例如:(aabbccae),返回 ( (a 2) (b 2) (c 2) (a 1) (e 1) )。 我尝试过, (define (loop lst) (let (…
方案-eq?比较2个字符串?
我的程序有问题。 我有一个比较两个字符串的条件: (if (eq? (exp1) (exp2))) 当 exp1 给我一个字符串,而 exp2 给我一个字符串。可以肯定的是,当我…