4
我有一個函數在Clojure中,是否有一種替代方法可以將一個函數應用於所有的序列?
(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))))))
是否有功能映射的方法嗎?
作爲剛開始看Clojure的人(並且喜歡它很多),我不得不說,doseq的鏈接文檔並不那麼清楚。它是指在形式上如何完成事情?如果是這樣的話,那個文檔也可能會更好(關於文檔的最好的例子就是這樣的例子)。 – Anon 2009-10-07 15:11:24
是的,有一個wiki你可能會發現很方便: http://en.wikibooks.org/維基/ Clojure_Programming /實施例/ API_Examples/do_Macros#doseq – 2009-10-07 23:34:34