Added Clojure implementation