12 lines
233 B
Clojure
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)))
|