TYPE CONSTRUCTORS data type T1{1} :: * -> * roles nominal data type T2{1} :: * -> * data type T3{2} :: forall k. k -> * roles nominal phantom data type T4{2} :: (* -> *) -> * -> * roles nominal nominal data type T5{1} :: * -> * data type T6{2} :: forall {k}. k -> * roles nominal phantom data type T7{3} :: forall {k}. k -> * -> * roles nominal phantom representational DATA CONSTRUCTORS K7 :: forall {k} (a :: k) b. b -> T7 a b K6 :: forall {k} (a :: k). T6 a K5 :: forall a. a -> T5 a K4 :: forall (a :: * -> *) b. a b -> T4 a b K3 :: forall k (a :: k). T3 a K2 :: forall a. a -> T2 a K1 :: forall a. a -> T1 a Dependent modules: [] Dependent packages: [base-4.17.0.0] ==================== Typechecker ==================== Roles1.$tcT7 = GHC.Types.TyCon 178606230775360129#Word64 14564382578551945561#Word64 Roles1.$trModule (GHC.Types.TrNameS "T7"#) 1# $krep Roles1.$tc'K7 = GHC.Types.TyCon 15901479081375327280#Word64 4842873210599704617#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K7"#) 3# $krep Roles1.$tcT6 = GHC.Types.TyCon 7244893995195634045#Word64 6882827069359931041#Word64 Roles1.$trModule (GHC.Types.TrNameS "T6"#) 1# $krep Roles1.$tc'K6 = GHC.Types.TyCon 13928703131159360198#Word64 9274401506945696896#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K6"#) 2# $krep Roles1.$tcT5 = GHC.Types.TyCon 12033401645911719002#Word64 6369139038321702301#Word64 Roles1.$trModule (GHC.Types.TrNameS "T5"#) 0# GHC.Types.krep$*Arr* Roles1.$tc'K5 = GHC.Types.TyCon 5548842497263642061#Word64 18349261927117571882#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K5"#) 1# $krep Roles1.$tcT4 = GHC.Types.TyCon 15834077582937152787#Word64 17059037094835388922#Word64 Roles1.$trModule (GHC.Types.TrNameS "T4"#) 0# $krep Roles1.$tc'K4 = GHC.Types.TyCon 10188453925450404995#Word64 4762093850599364042#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K4"#) 2# $krep Roles1.$tcT3 = GHC.Types.TyCon 13341737262627465733#Word64 14527452670364737316#Word64 Roles1.$trModule (GHC.Types.TrNameS "T3"#) 1# $krep Roles1.$tc'K3 = GHC.Types.TyCon 14534968069054730342#Word64 6860808298964464185#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K3"#) 2# $krep Roles1.$tcT2 = GHC.Types.TyCon 12900773996789723956#Word64 9313087549503346504#Word64 Roles1.$trModule (GHC.Types.TrNameS "T2"#) 0# GHC.Types.krep$*Arr* Roles1.$tc'K2 = GHC.Types.TyCon 11054915488163123841#Word64 10799789256744079155#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K2"#) 1# $krep Roles1.$tcT1 = GHC.Types.TyCon 13228660854624297872#Word64 14494320157476678712#Word64 Roles1.$trModule (GHC.Types.TrNameS "T1"#) 0# GHC.Types.krep$*Arr* Roles1.$tc'K1 = GHC.Types.TyCon 1265606750138351672#Word64 7033043930969109074#Word64 Roles1.$trModule (GHC.Types.TrNameS "'K1"#) 1# $krep $krep [InlPrag=[~]] = GHC.Types.KindRepVar 1 $krep [InlPrag=[~]] = GHC.Types.KindRepVar 0 $krep [InlPrag=[~]] = GHC.Types.KindRepVar 0 $krep [InlPrag=[~]] = GHC.Types.KindRepVar 1 $krep [InlPrag=[~]] = GHC.Types.KindRepVar 2 $krep [InlPrag=[~]] = GHC.Types.KindRepApp $krep $krep $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep GHC.Types.krep$*Arr* $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep GHC.Types.krep$* $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep $krep $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep $krep $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep $krep $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep $krep $krep [InlPrag=[~]] = GHC.Types.KindRepFun $krep $krep $krep [InlPrag=[~]] = GHC.Types.KindRepFun GHC.Types.krep$*Arr* GHC.Types.krep$*Arr* $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT7 ((:) $krep ((:) $krep ((:) $krep []))) $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT6 ((:) $krep ((:) $krep [])) $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT4 ((:) $krep ((:) $krep [])) $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT3 ((:) $krep ((:) $krep [])) $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT5 ((:) $krep []) $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT2 ((:) $krep []) $krep [InlPrag=[~]] = GHC.Types.KindRepTyConApp Roles1.$tcT1 ((:) $krep []) Roles1.$trModule = GHC.Types.Module (GHC.Types.TrNameS "main"#) (GHC.Types.TrNameS "Roles1"#)