Scheme中的病态表达式

Scheme中的病态表达式,scheme,Scheme,我正在使用cond删除树(t)中l中出现的元素。这是我的尝试,从逻辑上讲是可行的。但为什么我会得到病态表达式?我已经尝试了很多东西,但仍然得到同样的错误。谢谢 (define check (lambda (l t) (cond ((null? t) ‘()) ((equal? (car l) (car (tree-labels t))) (check l (cdr(tree-labels t)))) ((and (not(null? l))(equal? (cadr l) (car

我正在使用cond删除树(t)中l中出现的元素。这是我的尝试,从逻辑上讲是可行的。但为什么我会得到病态表达式?我已经尝试了很多东西,但仍然得到同样的错误。谢谢

(define check (lambda (l t)
 (cond ((null? t) ‘())
   ((equal? (car l) (car (tree-labels t))) (check l (cdr(tree-labels t))))
   ((and (not(null? l))(equal? (cadr l) (car (tree-labels t))) (check l (cdr(tree-labels t))))
   (else (cons (car (tree-labels t)) (check l (cdr(tree-labels t)))) )))

这是一个打字错误,你可能用错误的字体从网页或电子书中复制了代码。更改此项:

‘()
为此:

'()

非常感谢@Óscar López。代码完全是我的。首先在普通文件上键入代码并粘贴到命令行是我的错。难怪我会出现这个错误,字体不同。