On Thu, 25 Sep 2008, David Menendez wrote:

That looks like it should work. I'm guessing you enabled
ExistentialQuantification, but not Rank2Types or RankNTypes. The
former allows you to use the forall keyword in data declarations, but
you need one of the others to allow universal quantification in
signatures, which is what build is using.

This could be better documented. The GHC manual lists all the
extensions it supports, but it doesn't use the same terminology as the
Extension codes (e.g. "arbitrary-rank polymorphism" instead of
"RankNTypes"), and there is a hierarchy of extensions that appears to
be entirely implicit. For example,

RankNTypes implies Rank2Types
Rank2Types implies ExistentialQuantification
Rank2Types implies PolymorphicComponents

Something to add to
   http://www.haskell.org/haskellwiki/Rank-N_types ?
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to