次: , 前: Function Indirection, 上: Forms


8.2.5 関数フォームの評価

評価すべきリストの先頭要素が、Lisp関数オブジェクト、 バイトコードオブジェクト、基本関数オブジェクトの場合、 そのリストは関数呼び出し(function call)です。 たとえば、つぎは、関数+の呼び出しです。

     (+ 1 x)

関数呼び出しを評価する最初の手順は、 リストの残りの要素を左から右へ順に評価することです。 その結果は実引数の値になり、1つの値がリストの1つの要素に対応します。 つぎの手順は、引数のリストで関数を呼び出すことで、 実質的には、関数apply(see Calling Functions)を使います。 関数がLispで書いてあれば、関数の引数変数を束縛するために引数を使います (see Lambda Expressions)。 そして、関数本体のフォーム群を順番に評価し、 本体の最後のフォームの値が関数呼び出しの値になります。