maam-0.1.0.0: A monadic framework for abstract interpretation.

Safe HaskellNone
LanguageHaskell2010

Lang.CPS.Val

Documentation

data CVal lτ dτ ψ Source

Constructors

LitC Lit 
CloC (Clo lτ dτ ψ) 
BotC 

Instances

(Ord (dτ ψ), Ord (lτ ψ)) => Val lτ dτ ψ (CVal lτ dτ ψ) 
(Ord (dτ ψ), Ord (lτ ψ)) => Val lτ dτ ψ (Power (* -> *) (* -> *) * CVal lτ dτ ψ) 
(Eq (lτ ψ), Eq (dτ ψ)) => Eq (CVal lτ dτ ψ) 
(Ord (lτ ψ), Ord (dτ ψ)) => Ord (CVal lτ dτ ψ) 
(Pretty (lτ ψ), Pretty (dτ ψ)) => Pretty (CVal lτ dτ ψ) 

botCL :: forall lτ dτ ψ. Prism (CVal lτ dτ ψ) () Source

cloCL :: forall lτ dτ ψ. Prism (CVal lτ dτ ψ) (Clo lτ dτ ψ) Source

litCL :: forall lτ dτ ψ. Prism (CVal lτ dτ ψ) Lit Source

data AVal lτ dτ ψ Source

Constructors

LitA Lit 
IA 
BA 
CloA (Clo lτ dτ ψ) 
BotA 

Instances

(Ord (lτ ψ), Ord (dτ ψ)) => Val lτ dτ ψ (AVal lτ dτ ψ) 
(Ord (dτ ψ), Ord (lτ ψ)) => Val lτ dτ ψ (Power (* -> *) (* -> *) * AVal lτ dτ ψ) 
(Eq (lτ ψ), Eq (dτ ψ)) => Eq (AVal lτ dτ ψ) 
(Ord (lτ ψ), Ord (dτ ψ)) => Ord (AVal lτ dτ ψ) 
(Pretty (lτ ψ), Pretty (dτ ψ)) => Pretty (AVal lτ dτ ψ) 

botAL :: forall lτ dτ ψ. Prism (AVal lτ dτ ψ) () Source

cloAL :: forall lτ dτ ψ. Prism (AVal lτ dτ ψ) (Clo lτ dτ ψ) Source

bAL :: forall lτ dτ ψ. Prism (AVal lτ dτ ψ) () Source

iAL :: forall lτ dτ ψ. Prism (AVal lτ dτ ψ) () Source

litAL :: forall lτ dτ ψ. Prism (AVal lτ dτ ψ) Lit Source

newtype Power val lτ dτ ψ Source

Constructors

Power 

Fields

runPower :: Set (val lτ dτ ψ)
 

Instances

(Ord (dτ ψ), Ord (lτ ψ)) => Val lτ dτ ψ (Power (* -> *) (* -> *) * AVal lτ dτ ψ) 
(Ord (dτ ψ), Ord (lτ ψ)) => Val lτ dτ ψ (Power (* -> *) (* -> *) * CVal lτ dτ ψ) 
SetLike (val lτ dτ ψ) (Power k k k val lτ dτ ψ) 
Container (val lτ dτ ψ) (Power k k k val lτ dτ ψ) 
Iterable (val lτ dτ ψ) (Power k k k val lτ dτ ψ) 
Eq (Power k k k val lτ dτ ψ) 
Ord (Power k k k val lτ dτ ψ) 
JoinLattice (Power k k k val lτ dτ ψ) 
PartialOrder (Power k k k val lτ dτ ψ) 
Pretty (val lτ dτ ψ) => Pretty (Power k k k val lτ dτ ψ)