b) how to do it right.
I did have an idea that went something like this:
- write ugens in Faust, compile them into dsp objects, link, load
- write a transaction-based patcher environment (or dataflow language)
wherein transactions (such as multiple object creation deletion connection etc) can be committed atomically (with OSC-style bundle time tags etc) 3. translate the generated networks of dsp objects back to Faust code 4. compile that Faust code into a new dsp object, link, load, run 5. rinse, repeat
So, an OpenCL backend (instead of C++ backend) for Faust is the missing link...
Claude
Okay, you've gone way beyond my area of knowledge already :) OpenCL sounds cool. I hadn't seen that one yet. The development platform with Faust is completely foreign to me--I don't think I can reply back to you with anything good. Probably, if we come up with anything in the way of top-down design, we should be able to apply the same framework to different platforms and make comparisons.
Chuck