On Sat, 2005-03-05 at 00:25 +0100, Benjamin Franksen wrote:
> 
> OK, I can see now that this makes sense syntactically. Still, it is
> strange 
> that the class name is handled as if it were a type constructor.

Yes.  It makes a weird sort of sense if you pretend type classes are
actually type constructors and instance declarations are inhabited by
types in a new "type class kind".  Say we use the symbol 'C' for the
kind of type class types.  Then the usual single parameter type class
constructors would have kind (* -> C) and multiparameter classes just
have more arrows, al la (* -> * -> C) for 2 parameters.

I can't decide if I like this idea or not.  Does it have any validity in
the associated type or category theories?
_______________________________________________
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to