soundon ;; noisybling to fourpart :basefreq local [a] make "a [] make "a fput list basefreq [[.9 50] [0 450]] a make "a fput list basefreq*2 [[.9 50] [0 450]] a make "a fput list basefreq*0.5 [[.9 50] [0 450]] a make "a fput list basefreq*3/2 [[.9 50] [0 450]] a output a end ;; harmony fourpart 440 to mapping :f.template :template.list ifelse (empty? :template.list) [ output [] ] [ output (fput (apply :f.template (list (first :template.list))) ~ (mapping :f.template (butfirst template.list))) ] end to sing :f.template :template.list ifelse (empty? :template.list) [ ] ~ [ apply :f.template (list (first :template.list)) sing :f.template (butfirst template.list) ] end make "notes [440 494 554 587 659 739 830 880] sing [harmony fourpart ?] notes to song make "i 180 repeat 30 [ harmony fourpart i make "i i + random 50 ] end