Language.Embedded.Imperative

Program monad

data ProgramT k instr fs m a

type Program k instr fs

interpretT

interpret

interpretBiT

interpretBi

type Param1 k a

type Param2 k k1 a b

type Param3 k k1 k2 a b c

Imperative instructions

data RefCMD fs a

data ArrCMD fs a

data ControlCMD fs a

data PtrCMD fs a

data FileCMD fs a

data C_CMD fs a

Composing instruction sets

data (k :+: k1) h1 h2 fs a

class (k :<: k1) sub sup

Interface for expression types

class FreeExp exp

class EvalExp exp

class CompExp exp

Front end