slurmulon / bach

:musical_score: Semantic music notation
http://codebach.tech
MIT License
7 stars 0 forks source link

[v2.0.0-SNAPSHOT] Useful semantic headers and refactored track normalization #22

Closed slurmulon closed 3 years ago

slurmulon commented 3 years ago

Summary

Major improvements and fixes to bach.track.

Introduces several new headers (such as total-ms-per-pulse-beat, beat-unit and more) to ease high-level interpretation and to reinforce domain semantics.

Also optimizes the format of bach.track/normalize-measures to allow high-level interpretation to be more pragmatic and generic.

The grammar/syntax was also updated to enable bach to be applied to any rhythm-based problem, instead of locking into concrete constructs such as Note, Chord, etc. More specifically, this allows headers and beat elements to use any name binding containing non-special chars.

This syntax update does not subtract from semantics, as Note, Chord, Scale and the like are still reserved for their original use cases. This change simply allows users to be more free and to establish their own constructs and semantics to sync with rhythms.

Using a SNAPSHOT version because the software is still considered pre-alpha and not production ready, however I need to be able to track breaking versions between various integration modules.

Changes

Future

Tickets