我寫了這個「碼」,顯示問題,因爲實際的代碼是相當大的避免使用全局變量在這種情況下
(defn add-list
([number]
(def used [number])
(add-list number used))
([number used]
;Add elements to used
;Process the elements in used
;Find the next number
(add-list number used)
))
我需要,我可以在FN訪問向量將允許我處理矢量內的項目,然後將輸出添加到矢量,以便舊項目和新項目在此矢量中進行下一個循環。
我通過定義添加列表函數上方的矢量得到了它的工作,但是如果我第二次在repl上運行該程序,矢量不會被清除。它還表示這個矢量有時不受限制。
您需要更具體地瞭解代碼需要做什麼。您可能還希望查看用於累積結果的'reduce'函數:https://clojuredocs.org/clojure.core/reduce –
我不添加數字我只是試圖將一個項目向量傳遞到此循環中將根據當前內容添加到矢量中。 – MDubzem
我一直在使用上述風格不可靠地工作,但我得到這樣的錯誤:IllegalArgumentException不知道如何創建ISeq:clojure.lang.Var $ Unbound – MDubzem