typeGenType :: Type -> [GenType]
/**
- * Return the kind of the type
+ * Return an approximation of the kind of the type given all the constructors
*/
:: Kind = KStar | (KArrow) infixr 1 Kind Kind
-genTypeKind :: GenType -> Kind
+genTypeKind :: [GenType] -> Kind
+instance toString Kind
/**
* Predicate whether the outer type is a builtin type