Implementing a symbolic music processing system
Miguel Filgueiras · Software Practice and Experience · 1998
A description is given of the ongoing work on the implementation of a music processing system, ScEX. Although originally thought of as a system for typesetting music (and hence the name, for ‘score (T)eX’), in fact it can be taken as a more general system that processes textual descriptions of music pieces and produces, for instance, printable scores, or input for music rendering systems. The architecture of the system, based on the existence of different representations for isolated voices and mixtures of voices, is discussed, which may be of use for developers of similar systems. Hopefully, it will be clear how beneficial for the implementation work was the use of well established compiler design notions and techniques, the exploitation of program reversibility, and the selection of a very high-level language (Prolog) as the implementation language. This description may then be taken as a case study in the use of such techniques, and make interesting reading for software developers in general. © 1998 John Wiley & Sons, Ltd.