X-Git-Url: http://git.tomasm.cz/fp.git/blobdiff_plain/df2f2deed8185e3f7267124074e1bf3c1e0f3112..bff68fbafa3711186b19a1c5dcc16becb49f162a:/src/HM/Term.hs?ds=inline diff --git a/src/HM/Term.hs b/src/HM/Term.hs index 0a686f9..cf4cf36 100644 --- a/src/HM/Term.hs +++ b/src/HM/Term.hs @@ -23,8 +23,8 @@ type VarName = String type TypeVarName = String type TypeName = String -data Type = Primitive TypeName | TypeVar TypeVarName | TypeFunction Type Type -data TypeScheme = TScheme Type | TSForAll TypeVarName TypeScheme +data Type = Primitive TypeName | TypeVar TypeVarName | TypeFunction Type Type deriving (Eq) +data TypeScheme = TScheme Type | TSForAll TypeVarName TypeScheme deriving (Eq) data Term = Var VarName | Lam VarName TypedTerm | App TypedTerm TypedTerm | Let VarName TypedTerm TypedTerm data TypedTerm = NTTerm Term | TTerm Term TypeScheme