 
 
 ;;Implementation of some tuning systems.
+
 (defmethod perfn :ed [[_ divisions multiplier initial freq]]
     "Divides a multiplier-tave (e.g. 2-tave = octave, 3-tave, &c.) into divisions divisions. Maps initial to a note with frequency freq."
     (fn [note]

          octave (quot (- note initial (- (count notemap) 1 )) (count notemap))]
        (* freq (nth notemap pos) (expt (ceil (reduce max notemap)) octave))))


;; Public Face - the tuning multimethods.


(defmulti tunednotes
    "Multimethod that returns a function taking note keywords to note numbers.

    A note keyword is usually of the form :[notename][pitchmodifiers][ntave], for example, :A4, :cb6 or :Bbb0, however this is entirely dependent on the kind of scale.

    TunedNotes functions should ideally return nonmatching symbols or numbers unmodified. Particularly numbers, which could be note numbers."
    list-flatten-first)

(defmulti reversenotes
