概要
上級オプションとして外部処理系との橋渡しを追加する (コア機能とは分離し、外部依存はすべてオプション扱い)。
- Strudel/Node ブリッジ:
clip pattern import-strudel --file p.js --cycles 4
@strudel/core を headless に実行し pattern.queryArc(0, n) でイベント列を取得 → notes JSON に変換
- フル mini-notation + Strudel の関数群 (every/sometimes/jux 等) がそのまま使える
- Csound / SuperCollider スコア実行:
audio render --engine csound --score s.csd
- 完全にテキストネイティブな音響合成資産 (数十年分) を波形生成の入力源にする
動機
自前実装 (mini-notation サブセット / numpy シンセ) でカバーしない高度な表現を、外部処理系に委譲して手に入れる。「記法を借りる (自前パーサ)」と「処理系ごと使う (ブリッジ)」を分離する方針の後者。
実装方針
- Node / csound / scsynth の存在確認は
doctor に統合し、未インストール時は明確なエラーメッセージ (exit code 3 or 20)
- ブリッジはサブプロセス実行 + JSON 中間表現。バージョン差異はブリッジ側スクリプトで吸収
- コア機能のテストがこれら外部依存に引きずられないよう、CI ではオプショングループとして分離
依存
関連: 表現力拡張ロードマップ Step 6
概要
上級オプションとして外部処理系との橋渡しを追加する (コア機能とは分離し、外部依存はすべてオプション扱い)。
clip pattern import-strudel --file p.js --cycles 4@strudel/coreを headless に実行しpattern.queryArc(0, n)でイベント列を取得 → notes JSON に変換audio render --engine csound --score s.csd動機
自前実装 (mini-notation サブセット / numpy シンセ) でカバーしない高度な表現を、外部処理系に委譲して手に入れる。「記法を借りる (自前パーサ)」と「処理系ごと使う (ブリッジ)」を分離する方針の後者。
実装方針
doctorに統合し、未インストール時は明確なエラーメッセージ (exit code 3 or 20)依存
関連: 表現力拡張ロードマップ Step 6