csound-expression-dynamic-0.3.8: dynamic core for csound-expression library
Safe HaskellNone
LanguageHaskell2010

Csound.Dynamic.Types.Dep

Description

Dependency tracking

Synopsis

Documentation

newtype DepT m a Source #

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.

Constructors

DepT 

Fields

Instances

Instances details
MonadTrans DepT Source # 
Instance details

Defined in Csound.Dynamic.Types.Dep

Methods

lift :: Monad m => m a -> DepT m a #

Monad m => Monad (DepT m) Source # 
Instance details

Defined in Csound.Dynamic.Types.Dep

Methods

(>>=) :: DepT m a -> (a -> DepT m b) -> DepT m b #

(>>) :: DepT m a -> DepT m b -> DepT m b #

return :: a -> DepT m a #

Monad m => Functor (DepT m) Source # 
Instance details

Defined in Csound.Dynamic.Types.Dep

Methods

fmap :: (a -> b) -> DepT m a -> DepT m b #

(<$) :: a -> DepT m b -> DepT m a #

Monad m => Applicative (DepT m) Source # 
Instance details

Defined in Csound.Dynamic.Types.Dep

Methods

pure :: a -> DepT m a #

(<*>) :: DepT m (a -> b) -> DepT m a -> DepT m b #

liftA2 :: (a -> b -> c) -> DepT m a -> DepT m b -> DepT m c #

(*>) :: DepT m a -> DepT m b -> DepT m b #

(<*) :: DepT m a -> DepT m b -> DepT m a #

data LocalHistory Source #

Constructors

LocalHistory 

Instances

Instances details
Default LocalHistory Source # 
Instance details

Defined in Csound.Dynamic.Types.Dep

Methods

def :: LocalHistory #

runDepT :: (Functor m, Monad m) => DepT m a -> m (a, LocalHistory) Source #

execDepT :: (Functor m, Monad m) => DepT m () -> m E Source #

evalDepT :: (Functor m, Monad m) => DepT m a -> m a Source #

Dependencies

depT :: Monad m => E -> DepT m E Source #

depT_ :: Monad m => E -> DepT m () Source #

mdepT :: Monad m => MultiOut [E] -> MultiOut (DepT m [E]) Source #

stripDepT :: Monad m => DepT m a -> m a Source #

stmtOnlyT :: Monad m => Exp E -> DepT m () Source #

Variables

newLocalVar :: Monad m => Rate -> m E -> DepT m Var Source #

newLocalVars :: Monad m => [Rate] -> m [E] -> DepT m [Var] Source #

writeVar :: Monad m => Var -> E -> DepT m () Source #

readVar :: Monad m => Var -> DepT m E Source #

initVar :: Monad m => Var -> E -> DepT m () Source #

appendVarBy :: Monad m => (E -> E -> E) -> Var -> E -> DepT m () Source #

Arrays

newLocalArrVar :: Monad m => Rate -> m [E] -> DepT m Var Source #

readArr :: Monad m => Var -> [E] -> DepT m E Source #

readOnlyArr :: Var -> [E] -> E Source #

writeArr :: Monad m => Var -> [E] -> E -> DepT m () Source #

writeInitArr :: Monad m => Var -> [E] -> E -> DepT m () Source #

initArr :: Monad m => Var -> [E] -> DepT m () Source #

appendArrBy :: Monad m => (E -> E -> E) -> Var -> [E] -> E -> DepT m () Source #

Read macros