R: [Haskell-cafe] Hacking Haskell in Nightclubs?

Doing music is a hard low level problem, a concurrency problem and is also an interesting problem for intelligent and behavioural computation. If it's true that Haskell can do its best on the second and third aspect, the undertaking seems to wrap with foreing interface one of the many good C libraries for low level audio/midi management. Btw, about the third aspect I liked your approach to model animations through behaviour in your book School of expressions. So now the questions seem to be: how difficult is today to wrap a C library? Which is the right tool to do it? C->Haskell? Salus, Enrico
-----Messaggio originale----- Da: haskell-cafe-bounces@haskell.org [mailto:haskell-cafe-bounces@haskell.org]Per conto di Paul Hudak Inviato: martedì 29 novembre 2005 3.36 A: Echo Nolan Cc: haskell-cafe@haskell.org; paul.hudak@yale.edu Oggetto: Re: [Haskell-cafe] Hacking Haskell in Nightclubs?
Although Haskore (haskell.org/haskore) doesn't currently support real-time music, it's something I've thought about numerous times in the past, and wish I had the time to do it...
-Paul Hudak
Echo Nolan wrote:
Hello all, I read an article on using perl for live improvised synthesis a while ago (http://www.perl.com/pub/a/2004/08/31/livecode.html). Does anyone have thoughts in doing this is haskell? Would strong typing make "jazzy" programming too difficult? Regards, Echo Nolan
-- Professor Paul Hudak Department of Computer Science Office: (203) 432-1235 Yale University FAX: (203) 432-0593 P.O. Box 208285 email: paul.hudak@yale.edu New Haven, CT 06520-8285 WWW: www.cs.yale.edu/~hudak _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

On Tue, 29 Nov 2005, Santoemma Enrico wrote:
Doing music is a hard low level problem, a concurrency problem and is also an interesting problem for intelligent and behavioural computation.
If it's true that Haskell can do its best on the second and third aspect, the undertaking seems to wrap with foreing interface one of the many good C libraries for low level audio/midi management.
That's not so bad if we can afford a little latency. If need be we can even have a separate thread or process being fed data from haskell land. -- flippa@flippac.org 'In Ankh-Morpork even the shit have a street to itself... Truly this is a land of opportunity.' - Detritus, Men at Arms

Santoemma Enrico wrote:
Doing music is a hard low level problem, a concurrency problem and is also an interesting problem for intelligent and behavioural computation.
If it's true that Haskell can do its best on the second and third aspect, the undertaking seems to wrap with foreing interface one of the many good C libraries for low level audio/midi management.
Btw, about the third aspect I liked your approach to model animations through behaviour in your book School of expressions.
So now the questions seem to be: how difficult is today to wrap a C library? Which is the right tool to do it? C->Haskell?
About low-level... Using C libraries, or using Haskell to produce CSound scripts, or SAOL, etc. is always possible, but not too ambitious, for a genuine Functional Sectarian. If you permit a shameless plug, I produced some purely functional programs which generated/simulated basic musical instruments using the waveguide models. It has been don not in Haskell but in Clean, since Clean arrays and unboxed lists were much more efficient than the equivalent structures in Haskell *at the time when I worked on that*. If you wish to have a look on the paper: http://users.info.unicaen.fr/~karczma/arpap/cleasyn.pdf Of course I can send the Clean stuff to the <<volenti>> as well, but I am aware that this is a 5th-column attitude in a Haskell list... Still, you can try to translate the models into Haskell, which should be conceptually trivial. The best. Jerzy Karczmarczuk
participants (3)
-
Jerzy Karczmarczuk
-
Philippa Cowderoy
-
Santoemma Enrico