[PD-dev] Functional Programming & C code generation

Tom Schouten tom at zwizwa.be
Tue May 14 18:18:06 CEST 2013


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








More information about the Pd-dev mailing list