3 import qualified Data.Map as Map
4 from Data.Either import :: Either
5 from AST import :: AST, :: Pos, :: Type, :: FieldSelector, :: Op2
6 from StdOverloaded import class toString
10 :: SemOutput :== Either [SemError] (AST, Gamma)
11 :: Constraints :== [(Type, Type)]
13 instance toString SemError
14 instance toString Gamma
16 sem :: AST -> Either [SemError] Constraints