ivory-eval-0.1.0.6: Simple concrete evaluator for Ivory programs

Safe HaskellNone
LanguageHaskell2010

Ivory.Eval

Description

A simple interpreter for a subset of Ivory.

Synopsis

Documentation

data EvalState Source #

Instances
Show EvalState Source # 
Instance details

Defined in Ivory.Eval

MonadFail (StateT EvalState (ExceptionT Error Id)) Source # 
Instance details

Defined in Ivory.Eval

data Value Source #

Instances
Eq Value Source # 
Instance details

Defined in Ivory.Eval

Methods

(==) :: Value -> Value -> Bool #

(/=) :: Value -> Value -> Bool #

Ord Value Source # 
Instance details

Defined in Ivory.Eval

Methods

compare :: Value -> Value -> Ordering #

(<) :: Value -> Value -> Bool #

(<=) :: Value -> Value -> Bool #

(>) :: Value -> Value -> Bool #

(>=) :: Value -> Value -> Bool #

max :: Value -> Value -> Value #

min :: Value -> Value -> Value #

Show Value Source # 
Instance details

Defined in Ivory.Eval

Methods

showsPrec :: Int -> Value -> ShowS #

show :: Value -> String #

showList :: [Value] -> ShowS #

openModule :: Module -> Eval a -> Eval a Source #

Run an action inside the scope of a given module.

evalBlock :: Block -> Eval () Source #

Main Evaluator