仿函数位置的非法参数 - 可能的括号问题

Illegal argument in functor position - possible bracket issue

我是 LISP 的新手,正在尝试开发一些应用程序。在这里,我试图计算传递给此函数的列表中每个元素的出现次数。但不幸的是,我收到了“仿函数位置的非法参数”错误。有人可以帮我解决这个问题并让这个程序运行吗?任何帮助将不胜感激

       (defun length1 (lst)
             (let ((list1 (remove-duplicates lst)))
             (cond ((null list1) 0)
                  (let ((number (count (car list1) lst)))) 
                  (print "Word was: ") 
                  (print '(car list1)) 
                  (print "Number of Occurances: ") 
                  (print number) 
                  (length (rest lst)))))

在 Common Lisp 语法(似乎是使用的语法,而不是 Scheme 的语法)中,它看起来是这样的:

(defun length1 (lst)
  (let ((list1 (remove-duplicates lst)))
    (cond ((null list1) 0)
          (t (let ((number (count (car list1) lst))) 
               (print "Word was: ") 
               (print (car list1)) 
               (print "Number of Occurrences: ") 
               (print number) 
               (length (rest lst)))))))