Hi all,
(Sorry for crossposting.)
This should be interesting for all who want to extend their Pd with
programs written in languages other than C/C++. I have created Pd plugin
interfaces for these two languages:
- Q, a functional programming language based on term rewriting (my own
creation; see
http://q-lang.sf.net). Q is a modern-style functional
programming language in which functions are defined by equations. It
also has an extensive collection of modules for doing graphics and
multimedia. My Pd/Q external allows you to execute Q functions in order
to do complicated control stuff in Pd, and it also provides a way to
access Q's multimedia interfaces inside Pd. This is available as a
source tarball (pd-qext-0.1.tar.gz); RPMs for Linux systems are also
available.
- Faust, Yann Orlarey's functional DSP programming language
(
http://faudiostream.sf.net). Faust's programming model combines two
approaches: functional programming and block diagram composition. You
can think of Faust as a structured block diagram language with a textual
syntax. The resulting C++ code is heavily optimized and can compete in
speed with handwritten C code. My Faust architecture file allows Faust
programs to be translated to Pd externals using the Faust compiler. This
makes it very easy to create new audio externals for Pd, and a bunch of
examples are readily available. I have also written a Q script which
generates complete Pd patches with graph-on-parent GUIs from Faust
programs. This stuff can be found in the faust2pd-1.0.tar.gz package.
You can find all the good stuff, including documentation and a lot of
examples on the Q website at:
http://q-lang.sourceforge.net/examples.html#Multimedia (see the bottom
of this page). The Faust interface will also soon be available as a part
of the mainstream Faust distribution.
Yann and me will show Faust, Q and their Pd and SuperCollider interfaces
at the International Computer Music Conference (ICMC) next week in New
Orleans, so if you have an opportunity to come we hope to meet you
there. (The presentation is on the very last day of the conference, Sat
Nov 11th, 3:30 p.m., see
http://www.icmc2006.org.)
For more information please see
http://faudiostream.sf.net and
http://q-lang.sf.net.
Enjoy. :)
Albert
--
Dr. Albert Gr"af
Dept. of Music-Informatics, University of Mainz, Germany
Email: Dr.Graef(a)t-online.de, ag(a)muwiinfa.geschichte.uni-mainz.de
WWW:
http://www.musikinformatik.uni-mainz.de/ag