我对 Clojure 很陌生,并且正在尝试通过移植我的代码之一来学习它,但是我目前遇到了以下问题:
=> lineup
{:c b4|b4|b3|b3, :sg b6|b11|b6|b6, :sf b7|b5|b5|b5, :pf b3|b1|b1|b1, :pg b10|b10|b11|b10}
=> (validate-lineup lineup)
ArityException Wrong number of args (0) passed to: PersistentHashMap clojure.lang.AFn.throwArity (AFn.java:437)
这是功能:
(defn validate-lineup [lineup]
(map (fn [position]
((hash-map (position 0)
(map
(fn [s] (.substring s 1))
(str/split (position 1) #"\|"))
))
) lineup))
我正在尝试产生类似以下结果:
{:c {"4" "4" "3" "3"} :sg {"6" "11" "6" "6"} :sf {"7" "5" "5" "5"} ... }
感谢您的帮助,如果我没有以正确的“Lisp”方式编写,请教我如何。