On Sep 9, 2015, at 8:28 AM, Simon Peyton Jones <simo...@microsoft.com> wrote:
> I think it'd be better to have > > TYPE :: TypeShape -> * > > data TypeShape = Unboxed | Boxed Levity > data Levity = Lifted | Unlifted > Yes, of course. > So we really would get very little levity polymorphism ineed. I think. That's right. The levity polymorphism is, essentially, only to have a nice type inference story. Once the code gets passed to the back end, the polymorphism would have to be removed. My idea was to use it to allow users to gloss (somewhat) over the ! vs. no-! distinction by having the compiler to the Right Thing during inference. Richard _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs