Yeah, sorry, it is here: https://gitlab.haskell.org/jvanbruegge/ghc/commit/73b383275f3d497338ca50a3a7934445c3858450
Am 03.04.19 um 13:11 schrieb Ben Gamari: > On April 3, 2019 7:06:11 AM EDT, "Jan van Brügge" <[email protected]> wrote: >> Hi, >> >> when trying to get familiar with the GHC code base for my Bachelor's >> thesis. I followed the GHC Wiki, especially the case study about the >> bool type. >> Now I wanted to add a new kind and a new type inhabiting this kind >> (without having to expose a data constructor, so without datatype >> promotion). >> >> So in TysWiredIn.hs I added the new TyCons and added them to the list >> of >> wired-in types: >> >> -- data Row a b >> rowKindCon :: TyCon >> rowKindCon = pcTyCon rowKindConName Nothing [alphaTyVar, betaTyVar] [] >> >> rowKind :: Kind >> rowKind = mkTyConTy rowKindCon >> >> -- data RNil :: Row a b >> rnilTyCon :: TyCon >> rnilTyCon = mkAlgTyCon rnilTyConName [] rowKind [] Nothing [] >> (mkDataTyConRhs []) >> (VanillaAlgTyCon (mkPrelTyConRepName rnilTyConName)) >> False >> >> rnilTy :: Type >> rnilTy = mkTyConTy rnilTyCon >> >> >> I also added two new empty data decls to ghc-prim, but if I inspect the >> kind of RNil it is not Row, but Type. So I think I am either >> understanding res_kind wrong or I have to do something completely >> different. >> I am also not sure how to verify that the code in TysWiredIn.hs is >> working at all, from all what I can tell it could just be the >> declarations in ghc-prim that result in what I see in ghci. >> >> Thank you and sorry for my beginner question >> Jan > Can you post a full branch? Nothing in particular looks wrong with what you > posted here but the PrelNames code is also relevant. > > Cheers, > > - Ben _______________________________________________ ghc-devs mailing list [email protected] http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
