Scheme 为什么赢了';这个方案不能编译吗?

Scheme 为什么赢了';这个方案不能编译吗?,scheme,racket,Scheme,Racket,我有一个scheme函数,我应该在它上面运行整数列表,但我不知道这个错误是什么意思。错误状态为:“如果:需要一个问题和两个答案,但在:(if(null?list);(cons(+1(car list))(f(cdr list)))中找到了4个部分。此函数缺少什么,以及'()到底做什么?谢谢!我以前从未使用过Scheme (define (f list) (if (null? list) ’() (cons (+ 1 (car list)) (f (cdr

我有一个scheme函数,我应该在它上面运行整数列表,但我不知道这个错误是什么意思。错误状态为:“如果:需要一个问题和两个答案,但在:(if(null?list);(cons(+1(car list))(f(cdr list)))中找到了4个部分。此函数缺少什么,以及'()到底做什么?谢谢!我以前从未使用过Scheme

(define (f list)
    (if (null? list)
        ’()
        (cons (+ 1 (car list)) (f (cdr list)))))
您使用了错误的报价(可能是复制粘贴错误?)

使用
而不是

您使用了错误的引号(可能是复制粘贴错误?)


使用
'
而不是
'

用于引用空列表的字符是右引号
'
,U+2019。如果使用ascii撇号
',U+0027,则代码工作正常

(define (f list)
    (if (null? list)
        '()
        (cons (+ 1 (car list)) (f (cdr list)))))

用于引用空列表的字符是右引号
,U+2019。如果使用ascii撇号
,U+0027,则代码工作正常

(define (f list)
    (if (null? list)
        '()
        (cons (+ 1 (car list)) (f (cdr list)))))