Mostly Clojure and Haskell solutions.