[Haskell] Proposal: Allow "\=" for field update in record update syntax

Robert Dockins robdockins at fastmail.fm
Sat Mar 5 08:57:11 EST 2005


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?


More information about the Haskell mailing list