Here's a little illustration: http://zwizwa.be/rai/rai.html
( Racket's documentation facility is really nice. )
On 05/14/2013 12:18 PM, Tom Schouten wrote:
Hi Pd devs
Is there anyone here interested in Functional Programming and C code generation for DSP code?
I'm working on a system for DSP code development based on the principle of Abstract Interpretation http://en.wikipedia.org/wiki/Abstract_interpretation
Basically, it will allow several interpretations of a single specification program:
- specification as a pure functional program
- imperative C code generation (for passing to C compiler or LLVM)
- Z transform for frequency plots of (linearized) transfer function
- automatic differentiation for all kinds of derivative-based tricks
- ...
It is written in Racket http://racket-lang.org/
It's starting to get to a point where it is actually useful (there is a basic synth core) and could use some feedback, but please note it is very experimental and still needs a lot of work. Familiarity with Racket is probably a prerequisite at this point to make sense of it. Current code is here: http://zwizwa.be/darcs/meta/rai/
It is part of a darcs archive that can be fetched using darcs gethttp://zwizwa.be/darcs/meta
I use Pd for most of the experiments. There is a generator for Pd externs, and a "live coding" reload mechanism that can reload recompiled processing code without messing up internal state, as long as the types are compatible.
Cheers Tom
Pd-dev mailing list Pd-dev@iem.at http://lists.puredata.info/listinfo/pd-dev