[linux-audio-dev] Writing LADSPA plugins in high level language?

Albert Graef Dr.Graef at t-online.de
Wed Jun 14 16:47:42 EDT 2006

Steve Harris wrote:
> When people think they want a VM or interpreter they often want garbage
> collection, generally garbage collection is not relatime safe. There
> are relatime garbage collectors, but they're not common and they're
> extremly complicated.

That's not necessarily true. If you can live without collecting cyclic 
structures then a simple reference counting scheme will do, which is 
very cheap and simple to implement. And SuperCollider shows that the 
more general case is tractable, too, at least in languages designed 
specifically for that purpose.

But I agree, there is no point in using interpreted languages to program 
DSP algorithms which operate on the sample level. If properly designed, 
they are o.k. for providing the glue between ready-made units which 
operate on the block level (like SC does, and CSound, and ...), but not 
for sample-level stuff. That's what compiled languages like Faust are 
for. Even when computers get a lot faster than they are now, we don't 
have any cpu cycles to waste on number crunching.

> Given that (Objective) C(++) has the best math libraries

I think that the scientific computing community will object to that. 
"Real programmers use Fortran." ;-)

> Faust is another matter however.

Yes, because it will do optimizations on the expression level that your 
C compiler can't do, and that you might not bother to do manually.


Dr. Albert Gr"af
Dept. of Music-Informatics, University of Mainz, Germany
Email:  Dr.Graef at t-online.de, ag at muwiinfa.geschichte.uni-mainz.de
WWW:    http://www.musikinformatik.uni-mainz.de/ag

More information about the linux-audio-dev mailing list