2013-06-30 90 views
1
(defn make-heavy [f] 
    (fn [& args] 
    (Thread/sleep 1000) 
    (apply f args))) 

(defn doRunThroughSplit [vector NoOfLines] 
;the function is too long 

(def zzz [34877 30287 18160 22981]) 

他們是4檔與行數量的參數錯誤傳遞

(time (def abc (map (make-heavy doRunThroughSplit [x1 n1 m1 b1] zzz)))) 

的數量似乎我不斷獲取此異常,我不明白爲什麼

ArityException Wrong number of args (3) passed to: final$make-heavy clojure.lang.AFn.throwArity (AFn.java:437) 

的化妝重功能實際上是從實際的clojure中複製過來的。

+0

下一次,請考慮張貼的編譯代碼。 – user100464

回答

2

可以想象的是,這是你想要的東西:

(defn make-heavy [f] (fn [& args] (Thread/sleep 1000) (apply f args))) 

(defn doRunThroughSplit [NoOfLines] (println "noOfLines=" NoOfLines)) 

(def zzz [34877 30287 18160 22981]) 

(time (def abc (map (make-heavy doRunThroughSplit) zzz)))