<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><noteed@gmail.com></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 <noteed@gmail.com><br>Subject: Re: [Haskell-cafe] On to applicative<br>To: "michael rice" <nowgate@yahoo.com><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 <<a ymailto="mailto:nowgate@yahoo.com" href="/mc/compose?to=nowgate@yahoo.com">nowgate@yahoo.com</a>><br>><br>> "Learn You a Haskell ..." says that (->) 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> Show a => a<br>is a type too, but you won't find a definition for 'a' or for '=>'.<br>All those things are defined by the language.<br><br>Cheers,<br>Thu<br></div></blockquote></td></tr></table><br>