RosettaCodeData/Task/Balanced-brackets/Clojure/balanced-brackets-2.clj

12 lines
233 B
Clojure

(defn balanced? [s]
(empty?
(reduce
(fn [stack first]
(case first
\[ (conj stack \[)
\] (if (seq stack)
(pop stack)
(reduced [:UNDERFLOW]))))
'()
s)))