1
通過fp-oo書中的練習,我很難用早期練習來添加正方形。這裏是我的代碼:期待這個clojure代碼中的函數是什麼?
(defn square [n]
(* n n))
(defn add-squares [l]
(cond
(nil? l) 0
:else (+ (square (first (l))) (add-squares (rest (l))))))
這個例子:
(add-squares '(2 2 2 2))
應該返回
16
但沒有與此異常:
ClassCastException clojure.lang.PersistentList cannot be cast to clojure.lang.IFn user/add-squares (NO_SOURCE_FILE:4)
我猜意味着我試圖在某處傳遞函數而不是一個預期的清單。有人能告訴我哪部分代碼是罪魁禍首嗎?
謝謝, 詹姆斯
感謝,消除圍繞在通話將L的括號先休息同樣的事情做了。 –