maam-0.2.0.1: An application of the Galois Transformers framework to two example semantics.

Safe HaskellNone
LanguageHaskell2010

Lang.LamIf.Syntax

Documentation

newtype RawName Source

Constructors

RawName 

Fields

getRawName :: String
 

data Lit Source

Constructors

I Int 
B Bool 

data BinOp Source

Constructors

Add 
Sub 
GTE 

data LBinOp Source

Constructors

LBinOp 

Fields

lbinOpOp :: BinOp
 
lbinOpLevel :: Int
 

Instances

data PreExp n e Source

Constructors

Lit Lit 
Var n 
Lam n e 
Prim LBinOp e e 
Let n e e 
App e e 
If e e e 
Tup e e 
Pi1 e 
Pi2 e 

Instances

Pretty n => Functorial * Pretty (PreExp n) 
(Eq n, Eq e) => Eq (PreExp n e) 
(Ord n, Ord e) => Ord (PreExp n e) 
(Pretty n, Pretty e) => Pretty (PreExp n e)