a framework for complex time structures based on coupled lists
We present a way to represent complex time-based data such as music using ordered timed sequences and coupled lists, emphasizing flexibility and extensibility. We present a number of strategies for traversing systems of aligned, dependent and parallel lists. We propose a mechanism to decouple sequence algorithms from the underlying data structures similar to the iterator pattern[8] but more appropriate for a complex data organization with coupled lists. The traversal policy is captured in a proceeder-object, while the data itself is accessed through value-inspectors. Some elegant constructs can be achieved by using virtual inspectors. We propose a scheme for efficient insertion and removal in ordered timed sequences based on aligned lists.
framework coupled lists music ordered timed sequence sequence algorithm iterator inspector aligned lists music notation proceeder parallel iteration