Stephen Sinclair wrote:
Does anyone know any interesting and powerful
languages that can be
used just like C? That can link to C libraries, and can be compiled to
native machine code, and can express the same low-level concepts as C,
but in a more powerful and intuitive way? In short, does anyone know
any languages other than C and C++ that would be interesting for audio
programming?
As SuperCollider and ChucK show, being interpreted and dynamically typed
doesn't preclude lowlat realtime audio work. I'd also like to mention my
own brainchild Q (
http://q-lang.sf.net), a general-purpose functional
programming language which interfaces nicely to MidiShare, Faust and
(via OSC) SuperCollider and is certainly usable for doing soft realtime
stuff for audio and computer music applications.
I have often wondered what I might do if I tried to
design such a
language, but I think it's just too big a task.
You can bet on that. :) Faust, ChucK and SuperCollider are all
domain-specific languages which makes the task somewhat simpler. There's
no doubt that creating a very-high-level language, which supports *both*
lowlat signal processing and general-purpose programming equally well,
will be a major undertaking which still needs a considerable amount of
research. One might argue that modern-style FPLs like Ocaml and Haskell
are almost there, but AFAICS they still lack realtime-capable
multithreading and decent multimedia interfaces. And we need more brave
souls like Erik who are willing to stray away from the traditional paths
and give those new languages a chance. ;-)
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