Release plans

Simon Peyton-Jones simonpj at
Tue Apr 17 08:57:34 EDT 2007

| Just to show what kind of problems we are currently facing. The
| following type checks in our EHC compiler and in Hugs, but not in the
| GHC:
| module Test where
| data T s = forall x. T (s -> (x -> s) -> (x, s, Int))
| run :: (forall s . T s) -> Int
| run ts  = case ts of
|              T g -> let (x,_, b) =  g x id
|                     in b

And indeed it should be rejected!

If you think it should be rejected, can you give me the translation into System F + data types?  I don't think there is one, and that's why GHC rejects it.


More information about the Glasgow-haskell-users mailing list