2013-06-30 4 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))) 
Смежные вопросы