Common Lispを勉強中なのですがどうしても理解できない部分があります。
(1 2 3)などと入力した場合エラーになるのに
(defun hoge (p) p)という関数を定義して
(hoge (list 1 2 3))などとした場合エラーにならないのはなぜなんでしょうか?
関数の本体が実行される前に引数が評価されてp イコール (1 2 3)になるのなら
エラーになると思うんですが・・