1
我不能使用所有的lambda函數,因爲我得到這個錯誤: 應用/ funcall的參數不是一個函數:(LAMBDA(E)(COUNT_ATOMS M E))。如何在LISP中定義LAMBDA函數?
而且代碼:
> (DEFUN count_atoms (m l)
> (COND ((ATOM l) (COND ((EQUAL m l) 1)
> (t 0)))
> (t (APPLY '+
> (MAPCAR '(LAMBDA (e) (count_atoms m e))
> l)))))
對於
(count_atoms 3 '((3 3) 3 (4 4) 5))
它應該打印3
這裏有什麼問題?
哈哈完美!謝謝一堆! – Alex 2015-04-04 22:17:25
@WillNess:您應該將其作爲答案發布,而不是評論。 – b4hand 2015-04-04 22:34:01