From 101d6203a335fdb61e7aa616984e118f80369e90 Mon Sep 17 00:00:00 2001 From: "Matsuura Tomoya(Windows)" Date: Sun, 20 Jul 2025 11:34:27 +0900 Subject: [PATCH] [obsidian] vault backup: 2025-07-20 11:34:26[ --- content/mimiumと多段階計算.md | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/content/mimiumと多段階計算.md b/content/mimiumと多段階計算.md index ab410b45..6a0b72c5 100644 --- a/content/mimiumと多段階計算.md +++ b/content/mimiumと多段階計算.md @@ -29,5 +29,31 @@ fn fbdelay(max_time){ } ``` -- +- こういうfbdelayを2個以上つかうときのコードはどうなるのかな + - というか、fbdelayで生成されたコードをMIRに持ってくときにどうなるのか? + - Value型を単なるCodeじゃなくてDelayとして特別な値にリダクションすればいいのかな + +[[otopoiesis]]でパラメーターを生成するのにも使える? + +```rust +fn synth(freq,gate){ + osc(freq)*gate +} + +fn synth_module(freq:()->float,gate:()->float){ + `||{ synth(freq(),gate()) } +} +``` + +これのモジュールを評価すると、freq,gateがUIに現れるという感じでできるのかな(そして、ここでUIの範囲制限をするためにも数値型が範囲を持っていた方がいいということになりそう) + +うーん、サンクを手動で使わず表現できるような何かが欲しいなあ + +```rust +fn wrap_module(param:Param, synth:(Param)->float ){ + `{ | | synth(param |> invoke) } +} +``` +Param型はinvokeでuiからの値を取れる、サンクをアンラップするようなメソッドを持つ型クラスに属している、という感じで、ジェネリクスが実装出来たらいけそうね +