我正在用 lisp 编写一个函数,但没有得到结果。函数是计算表达式中的原子数。
(defun count-atoms(exp)
'Return the total number of non-nil atoms in the expression'
(cond((null exp) 0)
((atom exp) 1)
( t (+ (count-atoms (first exp))
(count-atoms (rest exp))))))
当我在 clisp 中运行时,我得到的只是以下没有结果。
[3]> (count-atoms '(a b c))
(COND ((NULL EXP) 0) ((ATOM EXP) 1)
(T (+ (COUNT-ATOMS (FIRST EXP)) (COUNT-ATOMS (REST EXP)))))
任何人都可以帮忙吗?