updates'
[minfp.git] / check.dcl
1 definition module check
2
3 from StdOverloaded import class toString
4 from Data.Either import :: Either
5 from ast import :: Function, :: Expression
6
7 :: Scheme = Forall [[Char]] Type
8 :: Type = TVar [Char] | TInt | TBool | (-->) infixr 9 Type Type
9
10 instance toString Scheme, Type
11
12 check :: [Function] -> Either [String] (Expression, Scheme)