I'm seeing many replies, so I'll try to write an all-in-one answer to satisfy the curiosity. First, more important, the incompatibility is *only* technique and not personal. You can notice it through the following lines. Yesterday. I have a REPL and I start to write a kind of `scsynth' in Common Lisp. It is only to start something from scratch. I optimize some simple dsp for sbcl, with macro and type-declarations. Super fast. PortAudio library and a separate thread for RT. FIFO lock-free for the communications between NRT and RT (only `compare-and-swap' in sbcl for the time being). Memory pool in lisp for the nodes of the graph. Memory alloc/deallc for the buffers only in NRT with CFFI (so the malloc of C). The original gc only for the rest of NRT stuff. No memory (de)alloc in the RT-thread. In general, no locks in the RT thread. It is only the first stage, a way to start. I use a scheduler (Earliest deadline first algo) written in C some years ago (but not used). Integer-hash for the number of the nodes. After 4 hours (!!) I hear oscillators and noises in RT (low latency) and the cpu thinks that the computer is in standby. Some lines of code and rendering off-line thanks to libsndfile (but event-scheduling NRT is todo). Of course, all this is raw and to rewrite. Provisional target: - synthesize sounds rt and nrt - live coding and dsp on the fly - dsp library in CL I hope months and not years. tito ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net