呼び出されたときにリスト内の数値の階乗を返す関数を実装しようとしています。たとえば、 (fact '(2 4 3)) => (2 24 6) しかし、私のものは機能していません。構文エラーが見つからないだけで、ロジックが実装に対して正しいと確信しています。ご覧になり、フィードバックをお寄せいただければ幸いです。コードは次のとおりです。
(defun fact (list)
(cond ((null list) 0)
((zerop (first list) 1))
(* first list(fact (rest list)))
))