Abstract
We propose PiCO, a calculus integrating concurrent objects and constraints, as a base for music composition tools. In contrast with calculi such as [5], [9] or TyCO [16], both constraints and objects are primitive notions in PiCO. In PiCO a base object model is extended with constraints by orthogonally adding the notion of constraint system found in the ρ-calculus [12]. Concurrent processes make use of a constraint store to synchronize communications either via the ask and tell operations of the constraint model or the standard message-passing mechanism of the object model. A message delegation mechanism built into the calculus allows encoding of general forms of inheritance. This paper includes encodings in PiCO of the concepts of class and sub-class. These allow us to represent complex partially defined objects such as musical structures in a compact way. We illustrate the transparent interaction of constraints and objects by a musical example involving harmonic and temporal relations. The relationship between Cordial, a visual language for music composition applications, and its underlying model PiCO is described.
| Original language | English |
|---|---|
| Pages (from-to) | 21-52 |
| Number of pages | 32 |
| Journal | Constraints |
| Volume | 6 |
| Issue number | 1 |
| DOIs | |
| Publication status | Published - 1 Jan 2001 |
| Externally published | Yes |
Keywords
- Computer aided music composition
- Concurrent constraint objects
- Concurrent programming
- Constraint programming
- Formal calculi
- Mobile processes
- PiCO
- TyCO
- Visual language