Music theory representation and experimentation in Scala
By defining music from basic structures up, we can experiment with harmonies through applying different rules, for standards like
- standard pitch (usually 440 herz)
- pitch spaces (base for scales)
- pitch classes (base for pitch spaces) and more.
It could also serve as base of some kind of rule-based music generator.
Implement as much music theory structures as possible. Examples for "music theory structures" are tuning, roman numeral analysis or tritone inversions.
Build a module that can play notes, and chords and sequences of those.