You are trying to execute #(reduce + b) and #(reduce + s) . This does not work, #(reduce + b) expands to (fn* [] (clojure.core/reduce clojure.core/+ your-namespace/b)) . You cannot perform functions. Maybe you meant (reduce + b) , but that doesn't make any sense, because the result is a number, and you can't specify numbers either. Perhaps you meant [(reduce + b) (reduce + s)] or (map + bs) or (+ (reduce + b) (reduce + s)) , but I cannot do more than blindly assume here without knowing what you are really trying to achieve.
These lines are:
(cons (nth (nth (nth phr n) 1) 0) b) (cons (nth (nth (nth phr n) 1) 1) s)
strange too. Is part of seqs seqs longs?
Is your collection of this form [[[0 0 ,,,] [0 1 ,,,] ,,,] ,,,] (would you be from 0 to b and from 1 to s)? If so, you should probably write functions to access these values, since it is not an easy task to find out what is going on.
source share