-1
我創建了一個for循環宏的Clojure(基於this answer),這是如下:如何在函數中使用宏?
(defmacro for-loop [[sym init check change :as params] & steps]
`(loop [~sym ~init value# nil]
(if ~check
(let [new-value# (do [email protected])]
(recur ~change new-value#))
value#)))
現在,我想用這個for循環的一些功能裏面,但我無法弄清楚如何在一個函數中使用它。有人可以指導我做這個,或者給我一個簡單的使用這個函數的例子嗎?
如果你不知道如何使用它,你是如何編寫這個宏的?在函數內部使用它與從其他地方使用它非常相似。您有任何具體問題,或者您嘗試過的方法無效嗎? – amalloy 2014-10-28 02:51:14