music composition in clojure