Music Theory - Research 2018-08-31

By Max Woerner Chase

In this post:


Tiny Music is currently rather small, even for what it's meant to accomplish.

It defines several types:

Something that hadn't occurred to me before is that the way I'm representing Notes means that simultaneous notes must be accomplished via simultaneous measures. In terms of what the code sees, this means that intervals need to be able to look "across" voices. In terms of what the input looks like, this means that stuff like music for stringed instruments will require some serious conversion before it's in a state that makes sense.

Because of the wide variety of things that can be done in a rhythmic fashion, it seems like I should aim to parameterize NoteType by the type of actions that can be taken. Doing that, it may then be possible to represent the same stretch of music at different levels of abstraction: convert a set of chords made up of abstract notes into a set of interlinked intervals realized through four voices, then render as concrete pitches.

To get the implementation done, I'll want to introduce types in approximately the order they're in up there.


Next time, I start work on a tiny_music crate.