synthesizer-filter-0.4.1.1: Audio signal processing coded in Haskell: Filter networks
Synthesizer.Filter.MonadFix
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.
T
mdo
mdo v <- a (u + d w) w <- b (v + e y) 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 #