stateful arrays for clojure