我有一个功能
(defn change-score [docid termid]
(do (dosync (alter *documents-scores* assoc docid (+ 1 (*documents-scores* docid))))
nil) )
(defn vector-space[]
(loop [terms (count (deref *term-hash*))]
(if (zero? terms)
nil
(do
(dorun (map (fn[docid](change-score docid terms)) (doc-list terms)))
(recur (dec terms))))))
Run Code Online (Sandbox Code Playgroud)
在函数中是否有替代映射?
doseq正是为此目的.
(doseq [x xs] (side-effect x))
Run Code Online (Sandbox Code Playgroud)