當我試圖運行下面的代碼參數類型錯誤 - +
(defun sa (L)
(cond
((equal '+ (car L)) (soma (nth 0 L) (nth 2 L)))
(T (sa (cdr L)))
))
這段代碼的目的是在列表中我總結兩個數字(位置0和2我已經收到此錯誤信息正在使用)。 L是使用
(setq a (list 1 '+ 2))
;also the soma function
(soma (a b) (+ a b))
我知道這應該創建列表(1 + 2)。我知道問題是L在第一次傳球后回來的方式,因爲等於沒有返回true,但我不知道如何解決它。有什麼想法嗎?
是'(SOMA(AB)(+ AB))'應該是'(defun定義SOMA(AB)(+ AB))'。向我們展示您正在使用的*實際*代碼很重要。 – 2014-11-24 03:28:08