Signal processing with Haskell