Safe Haskell | None |
---|
Documentation
data EgisonTopExpr Source
data EgisonExpr Source
type BindingExpr = ([String], EgisonExpr)Source
type MatchClause = (EgisonExpr, EgisonExpr)Source
type MatcherInfo = [(PrimitivePatPattern, EgisonExpr, [(PrimitiveDataPattern, EgisonExpr)])]Source
data EgisonPattern Source
data EgisonValue Source
type Matcher = (Env, MatcherInfo)Source
type PrimitiveFunc = [WHNFData] -> Either EgisonError EgisonValueSource
type IOFunc = [WHNFData] -> EgisonM EgisonValueSource
data MatchingState Source
MState Env [Binding] [MatchingTree] |
type PatternBinding = (Var, EgisonExpr)Source
data EgisonError Source
liftError :: MonadError e m => Either e a -> m aSource
EgisonM | |
|
runEgisonM :: EgisonM a -> IO (Either EgisonError a)Source
msingleton :: Monad m => a -> MList m aSource