Little Languages for Music

‘‘Little languages’’ are programming languages or data description languages that are specialized to a particular problem domain. In the last decade, little languages have emerged to support a multitude of tasks ranging from complex statistical calculations to the construction of lexical parsers. Meanwhile, in the last half decade, a multitude of computer-controlled sound synthesis devices have become available. Unfortunately, there has been little overlap of these two dev elopment areas and the software to support these new devices has been rudimentary at best. This report describes a handful of little languages that have been designed for music tasks. Some of them allow particularly dense encoding of musical material or specify music at a higher level of abstraction than ‘‘notes’’, others present musical data in a form that is easy for users to read and edit. In all cases the representations are machinereadable and in most cases they can be ‘‘played’’ on a sound synthesizer by a computer.