[Haskell-cafe] New type of ($) operator in GHC 8.0 is problematic

Tom Ellis tom-lists-haskell-cafe-2013 at jaguarpaw.co.uk
Sat Feb 6 12:33:09 UTC 2016


On Sat, Feb 06, 2016 at 01:31:14PM +0100, Marcin Mrotek wrote:
> >
> > maybe :: forall (r :: RuntimeRep) (a :: *) (b :: TYPE r). b -> (a -> b) ->
> > Maybe a -> b
> >
> 
> `b` also is a type of an argument in that function, so I think being levity
> polymorphic on it in is excluded by "GC going haywire chasing values as if
> they were pointers" as described here:
> https://mail.haskell.org/pipermail/ghc-devs/2016-February/011269.html

Ah, "The levity polymorphic type never appears directly to the left of an
arrow.".  Thanks.


More information about the Haskell-Cafe mailing list