The Use of Hierarchy and Instance in a Data Structure for Computer Music

William A. S. Buxton, William T. Reeves, Ronald M. Baecker, Leslie Mezei · Computer Music Journal · 1978

From the above taxonomy of tasks derives one of our first major decisions: to have two major data types, objects and scores, which relate to the sonic level and deeper structural level, respectively. Secondlytaking into consideration that composers work in different ways-an important consideration was to structure the system such that there be no order imposed on the sequence in which the user undertakes the above four tasks. Therefore, a composer is allowed to perform a score before it has been orchestrated, for example. The implication is that the system should be capable of coping with incompletely specified data. The obvious solution is to ensure that the low level structures can support an elegant system of defaults. Finally, it was seen as important to design the data structures so as to facilitate the definition of the scope of operators which the composer would be invoking to affect the data base. The composer must be provided with a handle onto his data which goes beyond the note-by-note approach prevalent in most systems today. In the remainder of this paper, we shall present the design of a data structure which was developed in light of these considerations. We shall begin by giving a general background and motivation for the two main data types (scores & objects) and then proceed to present the details of the actual implementation.

Read the paper · More papers on PaperTik