Lisp 解释器的行为方式
在对表达式评估后,Lisp 解释器很可能会返回计算机通过执行函数定义中的指令得到的值,或者它可能放弃对该函数的处理并生成错误消息。(也可能出现解释器被抛入另一个函数的执行,或者陷入无限循环的情况,但这些比较少见,我们可以忽略。)最常见的情况是,解释器返回一个值。
与此同时,解释器还可能执行其他操作,如移动光标或复制文件;这类被称为副作用。我们人类认为重要的操作,比如打印结果,通常是 Lisp 解释器的副作用。学习使用副作用相对比较简单。
综上所述,对符号表达式评估通常会导致 Lisp 解释器返回一个值,并可能产生副作用;否则就会产生错误信息。