-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Untyped Lambda Calculus Abstract Syntax Tree -- -- An AST for the untyped lambda calculus. The AST is parameterized by -- symbol type. @package lambda-ast @version 0.0.4 -- | An Untyped Lambda Calculus AST module Language.Lambda.AST -- | A polymorphic version of the AST to allow different symbol types data GExpr a Var :: a -> GExpr a App :: (GExpr a) -> (GExpr a) -> GExpr a Lam :: a -> (GExpr a) -> GExpr a -- | A common symbol type choice type Sym = String -- | A common AST type Expr = GExpr Sym instance Typeable1 GExpr instance Show a => Show (GExpr a) instance Eq a => Eq (GExpr a) instance Data a => Data (GExpr a)