Files
quartz-research-note/content/mimium.md
Matsuura Tomoya(Windows) a80b88341f
All checks were successful
Build / build (push) Successful in 9m2s
[obsidian] vault backup: 2025-06-25 22:16:44[
2025-06-25 22:16:44 +09:00

59 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: mimium
tags:
- research
- programming-language
- "#computermusic"
- "#mimium"
date: 2023-08-28T22:32:09+0900
---
[[松浦知也]]が開発している[[音楽プログラミング言語]]。
https://mimium.org
https://github.com/mimium-org/mimium-rs
---
## 開発メモ
### 理論
- [[mimiumの部分的DSP更新とFaustのondemand]]
### 中間表現について
- [[mimium新内部表現の構想]]
- [[mimiumの中間表現を考える]]
- [[mimiumのMIRコンパイル過程を真面目に考える]]
- [[lambda-mmm(実用版)]]
- [[mimiumグローバル環境評価について]]
- [[多段階計算を命令型VMインストラクションで表現したい]]
### ランタイム周りについて
- [[mimiumにおけるIO制御]]
- [[mimiumでMIDIインプットを実装]]
- [[mimiumのファイルIO]]
- [[mimiumのプラグインシステム]]
- [[WASIでmimiumをビルドデバッグしてみる]]
- [[mimiumの配列のGC]]
## 応用先について
ふと思ったけど、[[SuperCollider]]や[[PureData]]と比べると、これらの言語は組み込みに使おうと思うとLinuxが動く環境を想定することになる[[Heavy]]はそれを全く別の処理系作ることで対応してたけど)。シーケンサとかスケジューラーがあるような、[[Faust]]だと難しいタイプのプログラムを[[Arduino]]とかに持っていくには向いているのではないか([[Extempore]]だって仕組み的に言えばそうかもしれないけど)
---
開発ロードマップ
[mimium-rs/Roadmap.md at dev · mimium-org/mimium-rs · GitHub](https://github.com/mimium-org/mimium-rs/blob/dev/Roadmap.md)
- 多段階計算:大変そう。コンパイラドライバをユーザーコードから叩けるようにするのが先か。
- [レコード型](https://github.com/mimium-org/mimium-rs/issues/99):要件定義はほぼできたし、他の機能への依存も特になし。デフォルト引数の実装を無視すればとりあえず進められそう
- モジュールシステム名前空間のCライブラリレベルでのマングリングとか考える必要ありそう。
- 配列型の実装GC問題片付けばなんとか固定長と可変長の切り替えをどうするかを考えたい。
- OSCの実装