Touretzky's Lisp
book第144页的示例代码导致我的环境出错。我的跑步方式有什么不对吗?
(defun price-change (old new)
(let* ((diff (- new old))
(proportion (/ diff old))
(percentage (* proportion 100.0)))
(list ’widgets ’changed ’by percentage
’percent))
)
这是错误。我不明白为什么要对字符串“小部件”进行评估...
Break 5 [7]> (price-change 1.25 1.35)
*** - LET*: variable ’WIDGETS has no value
The following restarts are available:
USE-VALUE :R1 Input a value to be used instead of ’WIDGETS.
STORE-VALUE :R2 Input a new value for ’WIDGETS.
ABORT :R3 Abort debug loop
ABORT :R4 Abort debug loop
ABORT :R5 Abort debug loop
ABORT :R6 Abort debug loop
ABORT :R7 Abort debug loop
ABORT :R8 Abort main loop
环境:Ubuntu 11.10,GNU CLISP 2.49
答案 0 :(得分:3)
您需要使用引号字符撇号:'
。你没有。您使用了正确的引号。