clojure solutions
haskell solutions