Monatron-0.3.1: Monad transformer library with uniform liftings

Control.Monatron.ZipperExamples

Documentation

fmask :: (m :><: n) -> Open e f (n a) -> Open e f (m a)Source

type Env = [(String, Int)]Source

data Mem e Source

Constructors

Store e 
Retrieve 

Instances

type Reg = IntSource

evalMem2 :: (StateM Reg (t m), StateM Count m, MonadT t) => Open e Mem (t m Int)Source

data Lit a Source

Constructors

Lit Int 

Instances

data Var a Source

Constructors

Var String 

Instances

data Add e Source

Constructors

Add e e 

Instances

lit :: Lit :<: g => Int -> Fix gSource

var :: Var :<: g => String -> Fix gSource

add :: Add :<: g => Fix g -> Fix g -> Fix gSource

store :: Mem :<: g => Fix g -> Fix gSource

handleExc :: Monad m => ExcT a m b -> m bSource