[Haskell-cafe] Non-existant existential?

Jim Apple jbapple+haskell-cafe at gmail.com
Thu Sep 21 18:07:21 EDT 2006


On 9/21/06, Bruno Oliveira <bruno.oliveira at comlab.ox.ac.uk> wrote:
> Have you tried to type check this example (the "g")?

No. Please excuse me, as I wasn't by my GHC at the time. Let's try:

data SimpExist a = Base a
                 | SimpExist (SimpExist (forall x . x -> a))
g :: SimpExist (forall a . a -> a)
g = Base id
h = SimpExist g

data WrapExist = forall a . WrapExist (SimpExist a)
i = WrapExist h

I'm familiar with the use for "forall" to mean "exists", but I am
baffled by h's ineffable type!

Jim


More information about the Haskell-Cafe mailing list