liftedTypeKind, unliftedTypeKind, openTypeKind,
argTypeKind, ubxTupleKind,
mkArrowKind, mkArrowKinds, isCoercionKind,
+ ecKind,
funTyCon, funTyConName,
primTyCons,
import OccName ( mkTcOcc,mkTyVarOccFS, mkTcOccFS )
import TyCon
import TypeRep
-import Type
-import Coercion
import SrcLoc
import Unique ( mkAlphaTyVarUnique )
import PrelNames
where c = chr (u-2 + ord 'a')
]
+ecKind = liftedTypeKind `mkArrowKind` (liftedTypeKind `mkArrowKind` liftedTypeKind)
+
ecTyVars :: [TyVar]
ecTyVars = tyVarList ecKind