lambda-cube-0.3.0: Some thoughts on Calculus of Constructions
Safe HaskellNone
LanguageHaskell2010

L3.Core.Eval

Description

Type checking and type inference

Synopsis

Documentation

evalExpr :: (Eq a, Enum a, Show a) => Context a -> Expr a -> Result (Expr a, Expr a) Source #

Evaluate an expression, returning its type and normalized form

evalExpr0 :: (Eq a, Enum a, Show a) => Expr a -> Result (Expr a, Expr a) Source #

evalExpr0 is the same as evalExpr with an empty context, meaning that the expression must be closed (i.e. no free variables), otherwise evaluation will fail.