On Thu, Nov 12, 2009 at 2:50 AM, Eugene Kirpichov <ekirpic...@gmail.com> wrote:
> But that's not an issue of semantics of forall, just of which part of
> the rather broad and universal semantics is captured by which language
> extensions.

The forall for existential type quantification is wierd.

> data Top = forall a. Any a   -- existential
> data Bottom = All (forall a. a) -- rank 2

I think it makes much more sense in GADT syntax:

> data Top where
>    Any :: forall a. a -> Top
> data Bottom where
>    All :: (forall a. a) -> Bottom

where it's clear the forall is scoping the type of the constructor.

  -- ryan
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to