Steven Yi wrote: > Hi All, > > I had a random thought the other day about introducing another > abstraction besides Instruments to Csound. The idea is to have > something called Patch that if defined would be automatically run and > only allow one instance. The internal idea is that it would have > slightly different internals and be optimized for allowing live > modifications to a graph at runtime. Opcodes would be wrapped and > instead of large block allocations of instances as in instruments, it > would allocate memory enough per opcode. My thought is that it would > be less-efficient but more flexible, and be suitable for host > applications to use. I imagine two use cases: > > 1. Max/PD types of applications > 2. Using scripting languages to create graphs of opcodes in realtime > > Also, the runtime profile would be a little different than instruments > today. Instruments currently flatten out graphs into an ordered list. > The use of wrappers to opcodes would maintain the tree of opcode > dependencies, thus allowing reordering. > > An alternative ideas to introducing a new abstraction is to allow > having instruments that maintain graphs as well as the flattened > lists, such that a graph change would trigger a recompile of the > flattened list/vars. The idea here would be to introduce something > besides TREE, something that can be queried and modified. Perhaps > something like UGEN* could work here. This might be able to be used > to extend the existing INSTR system and still maintain the efficient > runtime performance of the existing system (big block alloc, oplists, > etc.). Hi, It is not new for me and probably you know it (I remember your gentle message after the announcement of Incudine [1]). I have invented the Virtual UGen and it is not only for opcodes; a VUG contains lisp code and/or other nested VUGs. Besides, a parameter of a DSP (similar to an instrument in Csound) can be another DSP. It is also possible to define nested DSPs but currently the interface is low level and to review. All this is on-the-fly. Tito Latini [1] http://incudine.sourceforge.net ------------------------------------------------------------------------------ Android is increasing in popularity, but the open development platform that developers love is also attractive to malware creators. Download this white paper to learn more about secure code signing practices that can help keep Android apps secure. http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net