synthesizer-filter- Audio signal processing coded in Haskell: Filter networks

Safe HaskellNone




type T filter t a v x = StateT ChannelId (Writer [Channel filter t a v]) x Source #

If you find T still inconvenient, and if you don't care about portability, you can also use the following monad with the mdo notation.

  v <- a(u + dw)
  w <- b(v + ey)
  y <- c w

makeChannel :: [(ChannelId, filter t a v)] -> T filter t a v ChannelId Source #

run :: T filter t a v x -> [Channel filter t a v] Source #

toGraph :: T filter t a v x -> T filter Int t a v Source #