3 from Data.Either import :: Either
4 from AST import :: AST, :: Pos, :: Type
5 from StdOverloaded import class toString
8 = ParseError Pos String
9 | UnifyError Pos Type Type
11 :: SemOutput :== Either [SemError] AST
14 instance toString SemError
16 sem :: AST -> SemOutput