Author: Laurson, Mikael
Title: "PATCHWORK: A Visual Programming Language and some Musical Applications"
Institution: Sibelius Academy
Begun: April 1994
Completed: April 1996
Computer-assisted composition is a field calling upon various disciplines such as computer science, artificial intelligence, visual programming, music notation, music theory and representation of musical objects. This study presents a platform, called PatchWork (PW) which provides for the combination of these disciplines into an integrated whole. PatchWork is a general-purpose visual language with an emphasis on producing and analysing musical materials.
It is first studied how Common Lisp can be translated into a visual language. Then several PW extensions are introduced including abstractions. Two important concepts - musical objects and PW-editors - follow, changing PW from a purely functional language into an environment creating, storing and processing complex CLOS objects. PWConstraints, the other main topic of this study, is a PW user library specialised in rule-based programming.
PWConstraints allows the user to solve complex musical problems by describing the end result. First PWConstraints is introduced from the user's point of view. The discussion shows how the search-space is defined and how rules are written. The introductory part also includes several musical examples. After a technical discussion two case studies are presented. The first one is an extension dealing with polyphonic search problems. The second case study describes a large-scale musical search problem. A precomposed melodic line is harmonised with the help of a set of rules.
Keywords: computer-assisted composition, computer music, visual programming, rule-based programming
Chapter 1: Introduction
Chapter 2: PW in Perspective
Chapter 3: PW-Kernel
Chapter 4: Musical Objects and PW-Editors
Chapter 5: PWConstraints
Chapter 6: Conclusions
Address: Sibelius Academy, P.O. Box 86, 00251 Helsinki, Finland