Traditional musical notation, and commercially available computer programs for creating music are analogous to procedural programming. They view music as being a simple linear progression along a time axis. This fails to take into account that perhaps 70% of music consists of repetition of existing material, usually according to very simple rules of form. This SyntaxOfMusic is what communicates the shape of music to the listener. I am a beginner to O-O programming, but it feels like a much better way to deal with music. I have not read of any academic computer music programs that address this principle. Please let me know otherwise. -- EricMoon Any program that addressed the principle would be missing the point, in artistic terms at least. If you try to write music using literal or systematically modified repetition, you'll find it doesn't work when you listen to it. Closely examined, the works of the masters turn out to contain little such repetition, and surprisingly often none at all. A Bach fugue may sound highly ordered, but its repetitions are hardly ever systematic, and are always mingled with free elements. Essentially it's a conjuring trick - conjuring up in the listener's mind an image of a structure larger and more evocative than that of the notes on the page. -- David Wright Isn't MusicPatterns more to the point? Patterns according to ChristopherAlexander imply repetition (e. g. ECHO, ALTERNATING REPETITION, DEEP INTERLOCK) and variation (e. g. SCALING, ROUGHNESS) and a number of his 15 principle properties of living systems can be identified in music. -- HelmutLeitner