Re: Existential types, save me now?

1999-11-22 Thread Alex Ferguson
Hi Fergus. data OrdFuncExist = OE (Ord a = Char - a) That's not the syntax for a existential type, that's the syntax for a universally quantified type with rank-2 polymorphism. With that syntax, the argument of `OE' must be a polymorphic function with type `forall a . Ord a = Char -

RE: Existential types, save me now?

1999-11-22 Thread Mark P Jones
Hi Alex, | Here's some of the threatened examples: | | data OrdFuncExist = OE (Ord a = Char - a) | data OrdListExist = OLE (Ord a = [a]) Perhaps this is a GHC/Hugs difference, but the syntax that you've used here isn't permitted in Hugs ... and in old versions where it might have been

Re: Existential types, save me now?

1999-11-22 Thread Fergus Henderson
On 22-Nov-1999, Alex Ferguson [EMAIL PROTECTED] wrote: Here's some of the threatened examples: data OrdFuncExist = OE (Ord a = Char - a) That's not the syntax for a existential type, that's the syntax for a universally quantified type with rank-2 polymorphism. With that syntax, the

RE: Existential types, save me now?

1999-11-22 Thread Alex Ferguson
Hi Mark, all: thanks for the swiftly muddle-dispelling response. | Here's some of the threatened examples: | | data OrdFuncExist = OE (Ord a = Char - a) | data OrdListExist = OLE (Ord a = [a]) Perhaps this is a GHC/Hugs difference, but the syntax that you've used here isn't

Re: Existential types, save me now?

1999-11-22 Thread Fergus Henderson
On 22-Nov-1999, Alex Ferguson [EMAIL PROTECTED] wrote: Is this supposed to be a heterogenous list, or a homogeneous list? Sorry, I should have been a tad less terse: it's intended to be a homogeneous list, else the maximum wouldn't be well-typed. Oh, of course -- you're quite correct.