Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
FunClo | |
|
ThunkClo | |
|
data KonMemoClo lτ dτ Source
KonMemoClo | |
|
class Val lτ dτ γν αν | αν -> γν where Source
litI :: Literal -> αν lτ dτ Source
litTestE :: Literal -> αν lτ dτ -> γν Bool Source
dataI :: Data lτ dτ -> αν lτ dτ Source
dataAnyI :: DataCon -> αν lτ dτ Source
dataE :: αν lτ dτ -> γν (Data lτ dτ) Source
funCloI :: FunClo lτ dτ -> αν lτ dτ Source
funCloE :: αν lτ dτ -> γν (FunClo lτ dτ) Source
refI :: Ref lτ dτ -> αν lτ dτ Source
refE :: αν lτ dτ -> γν (Ref lτ dτ) Source
konCloI :: KonClo lτ dτ -> αν lτ dτ Source
konCloE :: αν lτ dτ -> γν (KonClo lτ dτ) Source
konMemoCloI :: KonMemoClo lτ dτ -> αν lτ dτ Source
konMemoCloE :: αν lτ dτ -> γν (KonMemoClo lτ dτ) Source
thunkCloI :: ThunkClo lτ dτ -> αν lτ dτ Source
thunkCloE :: αν lτ dτ -> γν (ThunkClo lτ dτ) Source
(Ord lτ, Ord dτ) => Val lτ dτ ConstructiveClassical OCVal | |
(Ord lτ, Ord dτ, Ord (ν lτ dτ), Val lτ dτ ConstructiveClassical ν) => Val lτ dτ SetWithTop (SumOfProdVal * * ν) |
Isomorphism2 * (PSΣ ν lτ dτ) (PSΣ' ν lτ dτ) | |
Morphism2 * (PSΣ ν lτ dτ) (PSΣ' ν lτ dτ) | |
Morphism2 * (PSΣ' ν lτ dτ) (PSΣ ν lτ dτ) | |
(Eq lτ, Eq dτ, Eq (ν lτ dτ)) => Eq (𝒮 ν lτ dτ) | |
(Ord lτ, Ord dτ, Ord (ν lτ dτ)) => Ord (𝒮 ν lτ dτ) | |
(Time ψ lτ, Time ψ dτ) => Bot (𝒮 ν lτ dτ) | |
(Pretty (Env lτ0 dτ0), Pretty (Store ν0 lτ0 dτ0), Pretty (Moment lτ0 dτ0)) => Pretty (𝒮 ν lτ dτ) | |
MonadState (𝒮 ν lτ dτ) (PS ν lτ dτ) |
type ValC ν lτ dτ = (JoinLattice (ν lτ dτ), Meet (ν lτ dτ), Neg (ν lτ dτ), Val lτ dτ SetWithTop ν) Source
type MonadC ν lτ dτ m = (Monad m, MonadBot m, MonadTop m, MonadPlus m, MonadState (𝒮 ν lτ dτ) m) Source
class (MonadC ν lτ dτ m, ValC ν lτ dτ, TimeC lτ dτ) => Analysis ν lτ dτ m | m -> ν, m -> lτ, m -> dτ Source
extract :: Analysis ν lτ dτ m => (a -> ν lτ dτ) -> (ν lτ dτ -> SetWithTop a) -> ArgVal lτ dτ -> m a Source
extractIsLit :: Analysis ν lτ dτ m => Literal -> ArgVal lτ dτ -> m () Source