|
|
- module Syntax (Expr(..), Decl(..), Program) where
-
- data Expr
- = Var String
- | App Expr Expr
- | Lam String Expr
- | Let [Decl] Expr
- deriving (Eq, Show)
-
- data Decl
- = Decl { declName :: String
- , declRhs :: Expr
- , declWhere :: Maybe [Decl]
- }
- deriving (Eq, Show)
-
- type Program = [Decl]
|