In cyclone we have [record~] and [poke~] to write to arrays, plus [play~] to play them.
Here's a shot with [record~] and [play~]. The [record~] object outputs its phase and that is useful for managing a delayed output by reading this buffer. It can also continue recording from where it stopped.
This sort of implements a delay, and I was taking a shot in keeping it playing from the same spot when you stop writing into the buffer. I haven't made this "freeze" and stop.
what do you think?