Safe Haskell | None |
---|---|
Language | Haskell98 |
Dependency tracking
- newtype DepT m a = DepT {
- unDepT :: StateT LocalHistory m a
- data LocalHistory = LocalHistory {
- expDependency :: E
- newLineNum :: Int
- newLocalVarId :: Int
- runDepT :: (Functor m, Monad m) => DepT m a -> m (a, LocalHistory)
- execDepT :: (Functor m, Monad m) => DepT m () -> m E
- evalDepT :: (Functor m, Monad m) => DepT m a -> m a
- depT :: Monad m => E -> DepT m E
- depT_ :: Monad m => E -> DepT m ()
- mdepT :: Monad m => MultiOut [E] -> MultiOut (DepT m [E])
- stripDepT :: Monad m => DepT m a -> m a
- stmtOnlyT :: Monad m => Exp E -> DepT m ()
- newLocalVar :: Monad m => Rate -> m E -> DepT m Var
- newLocalVars :: Monad m => [Rate] -> m [E] -> DepT m [Var]
- writeVar :: Monad m => Var -> E -> DepT m ()
- readVar :: Monad m => Var -> DepT m E
- readOnlyVar :: Var -> E
- initVar :: Monad m => Var -> E -> DepT m ()
- appendVarBy :: Monad m => (E -> E -> E) -> Var -> E -> DepT m ()
Documentation
Csound's synonym for IO
-monad. Dep
means Side Effect.
You will bump into Dep
trying to read and write to delay lines,
making random signals or trying to save your audio to file.
Instrument is expected to return a value of Dep [Sig]
.
So it's okay to do some side effects when playing a note.
DepT | |
|
data LocalHistory Source
LocalHistory | |
|
Dependencies
Variables
readOnlyVar :: Var -> E Source