Implementation of SICP exercises in Clojure