<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">So it's a type constructor, not a type? Could you please provide a simple example of its usage?<br><br>Michael<br><br>--- On <b>Tue, 8/31/10, Vo Minh Thu <i>&lt;noteed@gmail.com&gt;</i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: Vo Minh Thu &lt;noteed@gmail.com&gt;<br>Subject: Re: [Haskell-cafe] On to applicative<br>To: "michael rice" &lt;nowgate@yahoo.com&gt;<br>Cc: haskell-cafe@haskell.org<br>Date: Tuesday, August 31, 2010, 1:17 PM<br><br><div class="plainMail">2010/8/31 michael rice &lt;<a ymailto="mailto:nowgate@yahoo.com" href="/mc/compose?to=nowgate@yahoo.com">nowgate@yahoo.com</a>&gt;<br>&gt;<br>&gt; "Learn You a Haskell ..."&nbsp; says that (-&gt;) is a type just like Either. Where can I find its type definition?<br><br>You can't define it *in* Haskell as user code. It is a
 built-in infix<br>type constructor (Either or Maybe are type constructors too, not just<br>types). In fact, if you want to implement a simple, typed functional<br>language, you'll find it is the only built-in type constructor you<br>have to implement (as the implementor of the language).<br><br>Also,<br>&nbsp; Show a =&gt; a<br>is a type too, but you won't find a definition for 'a' or for '=&gt;'.<br>All those things are defined by the language.<br><br>Cheers,<br>Thu<br></div></blockquote></td></tr></table><br>