我正在解决4Clojure的问题.
我有一个Tic-Tac-Toe练习的工作解决方案,但我无法理解Darren的解决方案:
(fn [b]
(some (fn [p] (first (keep #(if (apply = p %) p)
`(~@b ; <- What is that ` and ~@?
~@(apply map list b) ;
~(map get b [0 1 2])
~(map get b [2 1 0])))))
[:x :o]))
;b is a two-dimensional vector
Run Code Online (Sandbox Code Playgroud)
`和〜@是什么意思?
clojure ×1