A Visual Programming Environment for Constraint based Musical Composition

Camilo Rueda

Ingeniería de Sistemas
Universidad Javeriana de Cali
Cali, A.A 26239 Colombia


We describe a visual programming environment called Niobé in which the composer can easily construct and operate on template musical structures defined by a set of relations. Niobé provides primitives allowing the composer to graphically program arbitrary constraints on some musical domain (harmonic, rhythmic, etc) and also a mechanism for computing one or several instances of specific musical structures whose elements satisfy the given constraints. The composer can in this way construct a potentially large data base of different musical structures, each having the same precisely defined properties. Resulting structures can be visualized and hand modified in different supplied music notation editors. Niobé has been carefully optimized for computing sequences of harmonic or rhythmic elements. lt uses the graphical interface of PatchWork, the visual music composition language developed at IRCAM in Paris. Niobé is implemented in Common Lisp-CLOS and is extensible.