Hi list, working with common music 2 it seems I stumbled across a bug in the process macro today. Trying the same with cm3 seems to indicate the bug hasn't been discovered yet (see below).
I fixed it in the common lisp part of the cm2 source. It is related to wrong handling and positioning of the iteration clauses in the process macro expansion. In case you're interested contact me and I can provide information how to fix the bug (the fix should easily be adoptable to the current cm3). In case you want to see the differences I applied today, just checkout cm-incudine at github (userid: ormf). -- Orm this works: sprout (process for a in '(0 1 2) for b = a do (display (format "a: ~a, b: ~a~%" a b)))) -> a: 0, b: 0 a: 1, b: 1 a: 2, b: 2 This doesn't work as expected: (sprout (process for a in '(0 1 2) for b = a then (+ a 1) do (display (format "a: ~a, b: ~a~%" a b)))) -> a: 0, b: #f a: 1, b: 1 a: 2, b: 2 (sprout (process for a in '(0 1 2) for b = a then (+ b 1) do (display (format "a: ~a, b: ~a~%" a b)))) -> a: 0, b: #f -> Error: + argument 1, #f, is boolean but should be a number(+ b 1) ; b: #f _______________________________________________ Cmdist mailing list Cmdist@ccrma.stanford.edu https://cm-mail.stanford.edu/mailman/listinfo/cmdist