August 12Aug 12 Dear all,I would like to program an idea from Tom Johnson's “Other Harmony” in Opusmodus, Adjacent Intervals:All chords have d4 as their lowest note and c5 as their highest note. The four intervals between these two notes are 4 3 2 1 (semitones), and these are permuted to create these 24 chords:Is there a possibility in Opusmodus?My programming skills are very limited.How is it possible to start all number combinations (the intervals) from, for example, d4?(setf it1 (permute '(4 3 2 1))) ;; How to get this programmed? (setf p1 (interval-map 'd4 (find-bar '( 1) it1 )) p2 (interval-map 'd4 (find-bar '( 2) it1 )) p3 (interval-map 'd4 (find-bar '( 3) it1 )) p4 (interval-map 'd4 (find-bar '( 4) it1 ))) ;; the first 4 permutations: (setf int '(1 2 3 4)) (assemble-section 'p int)Thank you very much for any hint!best wishes from BerlinAO
August 12Aug 12 Not sure if this is what you want.Jesper(setf it1 (permute '(4 3 2 1))) (setf foo (chordize (interval-map '(d4) it1))) (make-omn :length '(1/4) :pitch (flatten foo) :span :pitch)
August 12Aug 12 (setf ints (permute '(1 2 3 4))) (setf chords (loop for i in ints append (chordize (interval-to-pitch i :start 'd4)))) (make-omn :pitch chords :length '(w) :span :pitch)
August 13Aug 13 Author Excellent, thank you very much. I wonder what the decisive difference is in the interval-map function ‘d4 or ’(d4) in Jesper's solution (then a list?). Both are great solutions (as is AM's elegant solution) and exactly what I was looking for!!!Best wishesAO
Create an account or sign in to comment