[Haskell-cafe] Audio signal processing in Haskell

Henning Thielemann iakd0 at clusterf.urz.uni-halle.de
Sat Apr 3 19:04:18 EST 2004


As I can see a question similar to mine was already raised here:
 http://www.haskell.org/pipermail/glasgow-haskell-users/2004-February/006305.html

 I also encountered the elegance that Haskell's laziness provides for
signal processing. I use lists for the signals. With help of Haskore I put
together a small song and it needed 5 minutes for rendering the quite
simple music of about 30 seconds. Don't care about the exact numbers but I
find it rather slow. 
 What is the most promising strategy to speed up the computation without
loosing the elegance of Haskell's lists?
 1. Upgrading GHC from 6.0 to the current version?
 2. Use of simplification rules? How can I find out what new rules may be
useful? The several dumps that GHC can generate are a bit hard to
understand.  :-( Is there some more detailed information about what rules
GHC already applies than what one can get with -ddump-simpl-stats and
-ddump-rules?
 3. More strictness? Is a custom list structure with strict entries and
maybe with only one constructor (thus always infinite) a considerable
alternative? This would disallow the use of lots of functions that deal
with lists, including State monad functions. 
 4. A list of arrays? Then signal processes with feedback like an echo are
much more difficult.





More information about the Haskell-Cafe mailing list