【发布时间】:2015-11-13 14:47:11
【问题描述】:
我编写了以下方案代码:
(define (last-pair list1)
(if (null? cdr list1)
car list1
(last-pair (cdr list1))))
(define (rev list1)
(if (null? list1)
list1
(append (rev (cdr list1)) (list (car list1)))))
在名为 test.scm 的文件中。
在终端,我运行:
加载“test.scm”
那我试试:
(last-pair (list 1 2 3))
;Value 15: (3)
这是正确的。
那我试试:
(rev (list 1 2 3))
;Unbound variable: rev
;To continue, call RESTART with an option number:
; (RESTART 4) => Specify a value to use instead of rev.
; (RESTART 3) => Define rev to a given value.
; (RESTART 2) => Return to read-eval-print level 2.
; (RESTART 1) => Return to read-eval-print level 1.
似乎它正在正确加载我的文件,因为它加载了last-pair,但我不确定为什么会出现上述错误...
谢谢!
【问题讨论】:
标签: scheme