(defparameter *parts*
(list (new fms:part :name "Violin 1" :instr :violin :partid 'vlns
:props '((:distr (v2 2) (v3 3) (v4 4) (v5 5) (v6 6))))
(new fms:part :name "Violin 2" :instr :violin :partid 'v2)
(new fms:part :name "Violin 3" :instr :violin :partid 'v3)
(new fms:part :name "Violin 4" :instr :violin :partid 'v4)
(new fms:part :name "Violin 5" :instr :violin :partid 'v5)
(new fms:part :name "Violin 6" :instr :violin :partid 'v6)))
(defun polygen (voice len minp maxp)
(process repeat len
output (new fms:note
:off (now)
:voice voice
:partid 'vlns
:note (between minp maxp)
:dur 1/2)
wait 1/2))
(events (list (polygen '(1 2 3 4 5 6) 20 55 70)
(polygen '(1 2 3 4 5 6) 20 60 75)
(polygen '(1 2 3 4 5 6) 20 65 80)
(polygen '(1 2 3 4 5 6) 20 70 85)
(polygen '(1 2 3 4 5 6) 20 75 90)
(polygen '(1 2 3 4 5 6) 20 80 95))
"/tmp/fomus.ly" :parts *parts* :quality 3 :view t)
Figure 20: 6 Part Polyphony