I was quite delighted to find that someone had taken the time to build a lovely music theory library for Rust -- thank you! (I've built some in other languages, namely Erlang/LFE, and was really dreading starting from scratch again).
I actually needed this to integrate with a comprehensive music theory knowledge base / MCP server I've created for graduate-level research needs (but it supports entry-level and intermediate users and knowledge levels, as well; see https://github.com/music-comp/ai-music-theory).
As such, I have created a fork (https://github.com/music-comp/mt-rs) which now includes Neo-Riemannian functions, pitch class set-theortic functions, etc. (see: https://github.com/music-comp/mt-rs/releases/tag/0.4.0). However, the reason I bring this up here is I wanted to let you know that I did some verification passes on existing functions and found several bugs. I've made too many changes (and too quickly) to contribute these back, but in case you want a reference for future TODO items, here are some links:
In my fork, I have explicitly stated that my work is derived from yours -- so full credit is given; I have also preserved the full git history.
Thanks again!!
I was quite delighted to find that someone had taken the time to build a lovely music theory library for Rust -- thank you! (I've built some in other languages, namely Erlang/LFE, and was really dreading starting from scratch again).
I actually needed this to integrate with a comprehensive music theory knowledge base / MCP server I've created for graduate-level research needs (but it supports entry-level and intermediate users and knowledge levels, as well; see https://github.com/music-comp/ai-music-theory).
As such, I have created a fork (https://github.com/music-comp/mt-rs) which now includes Neo-Riemannian functions, pitch class set-theortic functions, etc. (see: https://github.com/music-comp/mt-rs/releases/tag/0.4.0). However, the reason I bring this up here is I wanted to let you know that I did some verification passes on existing functions and found several bugs. I've made too many changes (and too quickly) to contribute these back, but in case you want a reference for future TODO items, here are some links:
In my fork, I have explicitly stated that my work is derived from yours -- so full credit is given; I have also preserved the full git history.
Thanks again!!