<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Thanks all,<br><br>Now that I have a (very) rudimentary understanding of Haskell, I figured I'd back up and have a closer (conceptual) look at type definitions to see what they have in common, and just happen to pick Maybe and List.<br><br>I also noticed Maybe has a list of "Instances"<br><br>Monad Maybe<br>Functor Maybe<br>Typeable1 Maybe<br>MonadFix Maybe<br>MonadPlus Maybe<br>etc.<br><br>while List has none, at least I don't see any in Data.List. Same reason?<br><br>From "Learn You A Haskell:"<br><br>"If a type is a part of a typeclass, that means it supports and implements the behavior the typeclass describes."<br><br>I'm way out on a limb here, but isn't Monad a typeclass? and if, as we say above, that Maybe is an instance of Monad, wouldn't there have to be<br><br>instance Monad Maybe where<br>&nbsp;return = ...&nbsp; -- return for
 Maybe<br>&nbsp;&gt;&gt;= = ...&nbsp;&nbsp;&nbsp;&nbsp; -- bind for Maybe<br>&nbsp;etc.<br><br>somewhere? Where? It's not in Data.Maybe. Is there some kind of scheme for defining this stuff, i.e., this goes here, that goes there?<br><br>Michael<br><br><br><br>--- On <b>Fri, 7/30/10, Edward Z. Yang <i>&lt;ezyang@MIT.EDU&gt;</i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: Edward Z. Yang &lt;ezyang@MIT.EDU&gt;<br>Subject: Re: [Haskell-cafe] Definition of List type?<br>To: "michael rice" &lt;nowgate@yahoo.com&gt;, "haskell-cafe" &lt;haskell-cafe@haskell.org&gt;<br>Date: Friday, July 30, 2010, 3:01 PM<br><br><div class="plainMail">Excerpts from Edward Z. Yang's message of Fri Jul 30 14:48:34 -0400 2010:<br>&gt;&nbsp; &nbsp;&nbsp;&nbsp;Const x xs&nbsp; is x:xs (constructor)<br><br>That should be a Cons, not Const.
 :o)<br><br>Cheers,<br>Edward<br></div></blockquote></td></tr></table><br>