10.2.5 Evaluation of Function Forms

如果正在被求值的列表的第一个元素是 Lisp 函数对象、字节码对象或原语函数对象,那么该列表就是一个 函数调用(function call)。例如,下面是对函数 + 的一次调用:

(+ 1 x)

对函数调用进行求值的第一步,是从左到右依次对列表中除第一个元素外的其余部分进行求值。得到的结果就是实际参数值,列表中的每个元素对应一个值。 下一步是使用这组参数列表去调用该函数,其效果等价于使用函数 apply(see 调用函数)。如果该函数是用 Lisp 编写的,这些实参会用来绑定函数的形参变量(see Lambda 表达式);随后函数体中的各个表达式会按顺序求值,最后一个表达式的值就是本次函数调用的返回值。

emacs

Emacs

org-mode

Orgmode

Donations

打赏

Copyright

© 2025 Jasper Hsu

Creative Commons

Creative Commons

Attribute

Attribute

Noncommercial

Noncommercial

Share Alike

Share Alike