[ moving this over from the other thread ] > For other examples a hierarchical structure is exactly the right thing:
Right, I was assuming a hierarchical score for the reasons you give, among others. I think I'm agreeing with you :) >> I'm not totally convinced the integration is valuable, but seeing as >> almost all other systems don't have it, it seems interesting to >> experiment with one that does and see where it leads. Maybe another >> way of putting it is that different interpretations of abstract >> instructions like legato are not necessarily always along instrument >> (piano vs. violin) lines: it may vary from phrase to phrase, or >> section to section. > > I think the hierarchical music structure has its value in being able to > be converted to a lot of back-ends. The Performance structure is good > for MIDI and Csound. The hierarchical structure is better for > SuperCollider and pure Haskell signal processing, because of such > effects like filter sweeps, speed variation at signal level, or > reversing parts of the music. The hierarchical structure can be simply > converted to Performance. I would have thought that the hierarchical > structure is also better for music notation, but the actual > implementations show, that it is not. I'm still making a go at hierarchical, though I imagine music will generally be flatter than most code there is still structure in there. What I was saying about about phrase by phrase or section by section is certainly a hierarchical concept. However, the parameterization works differently. I think it is more likely to be specific and ad hoc, which doesn't work with the programming techniques of making the changing parts into function arguments, or some other "template with holes" kind of setup. For example, something repeats 3 times, but each time has some differences in a few places. The first time has a transition from the previous section, the middle one has an accent in the middle, the last one has a transition to the next section. Or maybe the differences are textural with a different figuration, or just in "performance" such as a slower arpeggio. Structurally each repeat is the same, because the differences are textural. But if the texture is through-composed in the same way as the structure, how do you capture the structure? Separating a Player from the Score is one way, but potentially clumsy unless you have some clever way to communicate with the Player in the score. And it's probably limited to the "arpeggio speed" level of parameterization, but there's really a smooth continuum of variation all the way until the structural similarity is so abstract it may as well be a figment of the composers imagination (but expressing that is easy: write a comment). _______________________________________________ haskell-art mailing list [email protected] http://lists.lurk.org/mailman/listinfo/haskell-art
