Q about haskell-report

David Feuer David_Feuer@brown.edu
Mon, 28 Jan 2002 4:36:08 -0500


> From: "Cagdas Ozgenc" <co19@cornell.edu>
> 
> Greetings.
> 
> In section 4.1 of Haskell Report for 98:
> 
> It is indicated that (->) has kind * -> *-> * and
> t1 -> t2 is equivalent to type (->) t1 t2
> 
> Does this make (->) a type constructor? Is this an 
attempt to unify
> functions and data types?

(->) is indeed a type constructor.  I was as surprised as 
you were when I discovered today that it is even possible 
to make (->) an instance of a class (e.g., Arrow).  I 
can't really answer your last question.

This message has been brought to you by the letter alpha and the number pi.