On 9/11/06, Bulat Ziganshin <[EMAIL PROTECTED]> wrote:
      Expr Bool = Eq (Expr t) (Expr t) | forall t . Eq t

Still confusing, but less so.

The problem is that it's really backwards. The symbol being defined is "Eq".

Eq (Expr t) (Expr t) | Eq t = Expr Bool

but that doesn't fit well, does it? In my mind, the current mode is a
functional one:

Eq :: Eq t => Expr t -> Expr t -> Expr Bool

And this is perfectly readable. The arrow means that the argument is
an implicit propositional one, but it's still an argument.

--
Taral <[EMAIL PROTECTED]>
"You can't prove anything."
   -- Gödel's Incompetence Theorem
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to