10.2.5 函数表达式求值(DONE)

若非空列表的第一个元素被求值为Lisp 函数,或字节码函数,或基础函数,那我们称这个列表为 函数调用。举个例子,这里展示了如何调用函数 +:

(+ 1 x)

函数调用的第一步是对其参数依次从左向右求值,求值的结果才真正的是参数的值。第二步为对参数列表,使用 apply 调用该函数(详情查阅 函数调用)。如果函数是使用 Lisp 编写的,那么其参数求值结果会绑定到函数的参数变量(详情查阅 Lambda 表达式);第三步,函数主体会依次运算,并将主体中最后运算值作为函数调用的值。

最后更新于