Wired-0.3: Wire-aware hardware description

Safe HaskellNone

Data.Logical.Let

Documentation

data Let x a Source

Instances

MonadLet x (Let x) 
Monad (Let x) 
Functor (Let x) 
MonadFix (Let x) 
Applicative (Let x) 

data LetT x m a Source

Instances

Monad m => MonadLet x (LetT x m) 
MonadTrans (LetT x) 
Monad m => Monad (LetT x m) 
Functor m => Functor (LetT x m) 
MonadFix m => MonadFix (LetT x m) 
(Monad m, Functor m) => Applicative (LetT x m) 

data Var x Source

class MonadKnot VarId x m => MonadLet x m | m -> x whereSource

Methods

free :: m (Var x)Source

Instances

MonadLet x (Let x) 
Monad m => MonadLet x (LetT x m) 

val :: Var x -> xSource

(===) :: MonadLet x m => Var x -> x -> m ()Source

runLet :: Let x a -> aSource

runLetT :: MonadFix m => LetT x m a -> m aSource