[obsidian] vault backup: 2025-12-01 11:42:28[
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -154,10 +154,10 @@ fn dsp(){
|
|||||||
fn cascade(n,gen){
|
fn cascade(n,gen){
|
||||||
if (n>0.0){
|
if (n>0.0){
|
||||||
let multiplier = 1.0-(1.0/(n*3)) |> lift_f
|
let multiplier = 1.0-(1.0/(n*3)) |> lift_f
|
||||||
`|rate| rate + gen!(rate/3)* rate* $multiplier
|
`|rate| rate + ($gen)(rate/3)* rate* $multiplier
|
||||||
|> $cascade(n - 1.0 ,gen)
|
|> $cascade(n - 1.0 ,gen)
|
||||||
}else{
|
}else{
|
||||||
`|rate| gen![]()(rate)
|
`|rate| ($gen)(rate)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#stage(main)
|
#stage(main)
|
||||||
@@ -190,7 +190,7 @@ fn dsp(){
|
|||||||
}
|
}
|
||||||
let dsp = | |{
|
let dsp = | |{
|
||||||
let f = 200
|
let f = 200
|
||||||
let r = f |> cascade!(20,`osc)
|
let r = f |> $cascade(20,`osc)
|
||||||
(r,r)
|
(r,r)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -215,6 +215,8 @@ enum StateTree{
|
|||||||
|
|
||||||
クロージャ(ほとんどの場合、高階関数)に関わる内部状態は、クロージャインスタンス上に保持される。
|
クロージャ(ほとんどの場合、高階関数)に関わる内部状態は、クロージャインスタンス上に保持される。
|
||||||
|
|
||||||
|
(非クロージャなダイレクトな関数呼び出しだとしても、関数の変数に対して破壊的代入で別の関数代入するとぶっ壊れる可能性あるな)
|
||||||
|
|
||||||
内部状態を参照するのは、ディレイ、Feed、非クロージャ関数呼び出しのいずれか。
|
内部状態を参照するのは、ディレイ、Feed、非クロージャ関数呼び出しのいずれか。
|
||||||
|
|
||||||
エントリポイント`dsp`からの非クロージャ関数呼び出しを辿っていけば静的に使用する内部状態の木構造が導出できる。
|
エントリポイント`dsp`からの非クロージャ関数呼び出しを辿っていけば静的に使用する内部状態の木構造が導出できる。
|
||||||
|
|||||||
Reference in New Issue
Block a user