ii-V-I example

This commit is contained in:
Jeremy Dormitzer 2018-07-18 23:34:31 -04:00
parent 07af15cdc4
commit 90cdd35d02

View File

@ -34,6 +34,21 @@
{:duration 1/4, :pitch [:G 3]}
{:duration 1/4, :pitch [:A 3]}]])
;; TODO exercise 2.1 (ii-V-I function)
;; this will involve being able to answer, "what pitch is n semitones above this one?"
(def ii-V-I
(let [Dm [:= (note 1 [:D 4])
(note 1 [:F 4])
(note 1 [:A 4])]
Gmaj [:= (note 1 [:G 4])
(note 1 [:B 4])
(note 1 [:D 5])]
Cmaj [:= (note 2 [:C 4])
(note 2 [:E 4])
(note 2 [:G 4])]]
[:+ Dm Gmaj Cmaj]))
(defn note [duration pitch]
{:duration duration, :pitch pitch})