X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=sem.dcl;h=08d8c8df66288f55ef1e5712823b8a8137e95d85;hb=13a108705dbabbc75711ce9b3b29fe508262919f;hp=b34bbc35e8f98f60f5e71a6c73b40d461df60f09;hpb=a363f872ee96379d8b0b9b14cb6faec9d74e7e92;p=cc1516.git diff --git a/sem.dcl b/sem.dcl index b34bbc3..08d8c8d 100644 --- a/sem.dcl +++ b/sem.dcl @@ -1,17 +1,15 @@ definition module sem +import qualified Data.Map as Map from Data.Either import :: Either -from AST import :: AST, :: Pos, :: Type +from AST import :: AST, :: Pos, :: Type, :: FieldSelector, :: Op2 from StdOverloaded import class toString :: SemError - = ParseError Pos String - | UnifyError Pos Type Type - | UnifyErrorStub Type Type - | Error String -:: SemOutput :== Either [SemError] AST - +:: Gamma +:: SemOutput :== Either [SemError] (AST, Gamma) instance toString SemError +instance toString Gamma sem :: AST -> SemOutput