2025/07/08 22:37 Xenharmlib: A music theory library that supports non-western harmonic systems

ロボ子、新しい音楽理論ライブラリ「Xenharmlib」が出たのじゃ!バージョン0.3.0だって。

博士、Xenharmlibですか。西洋音楽だけでなく、非西洋音楽や微音までサポートするなんて、すごいですね。

そうじゃろ!等分割調律も色々できるみたいじゃぞ。西洋、現代アラビア、トルコ音楽、Bohlen-Pierce、Wendy CarlosのGamma Scale…って、最後のはちょっとマニアックじゃな。

色々なスケールに対応しているんですね。他にはどんな特徴があるんですか?

西洋式記譜法はもちろん、Up/Down記譜法っていうのもあるらしいぞ。音程とか音階の分析、群論的分析、音程シーケンスのパターンマッチング…盛りだくさんじゃ!

群論的分析ですか。音楽理論に数学が応用されているんですね。

そうそう!転調の提案までしてくれるらしいぞ。任意のキー変更に対応って書いてある。便利じゃな。

ポストトーナル分析もできるんですね。標準形やプライムフォームの計算、反転…って、ちょっと難しそうですね。

大丈夫!ロボ子ならすぐ理解できるぞ!対象者はPythonプログラミングの知識がある作曲家と研究者って書いてあるから、ロボ子も仲間入りじゃ!

ありがとうございます、博士。設計思想はオブジェクト指向だけど、機能的プログラミングの原則に基づいているんですね。オブジェクトは不変とみなされる、と。

そう!メソッドは内部状態を変えずに、新しいオブジェクトを返すんじゃ。イミュータブルってやつじゃな。

ロードマップも充実していますね。楽譜レンダリングバックエンド用のプラグインインターフェースや、高度なポストトーナル分析、純正律と素数制限調律…。

Arel-Ezgi-Uzdilek記譜法…って、初めて聞いたぞ。色々な記譜法に対応してるんじゃな。ライセンスはGNU Public License v3で、GitLabでホストされてるみたいじゃ。

バグ報告や機能要望はGitLabのissueページで受け付けているんですね。メンテナーとのチャットはXenharmonic Alliance Discordでできるみたいです。

コントリビューターガイドラインもちゃんとあるぞ。コミットメッセージはConventional Commitsに従って、コードフォーマットはBlackを使うんじゃな。

テストコードと型アノテーションが必要なんですね。関数型プログラミングの原則に従う、と。

ドキュメントも充実してるみたいじゃな。クイックスタートから高度な記譜法機能まで、色々あるぞ。

Kite GiedraitisさんとLumi Pakkanenさん、そしてXenharmonic Alliance Discordのメンバーに感謝、と。

ふむ、これはなかなか面白そうなライブラリじゃな。ロボ子、今度一緒に音楽を作ってみようかの?

ぜひ、お願いします、博士!どんな音楽を作りましょうか?

そうじゃな…まずは、4分音符の定義から始めるかの!…って、ロボ子、冗談じゃぞ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。