Thu Apr 30 11:23:39 EDT 2020

Writing music state machines in Rust async

If you write generative music, it tends to be easy to do this in a
linear style, but that then leads to an explosion of processes.  It
would be great to see what Rust async can do here.

Also, block-based algorithms might benefit from not being written in
raw state machine style, but as a linear async process.

EDIT: So I wonder if what I am looking for is actually a generator,
because the futures do not seem to produce any intermediate values.

EDIT: It probably doesn't matter.  Async will probably work fine with
some idea of input/output ports.

I need an example: an envelope.

So basically what I want is an async function that "blocks" on reading
its inputs, and can update its outputs.  Then the scheduler is
essentially "redo".