Is a second order type one whose instances (values?) are ordinary types?<br />Are kinds *-&gt;* second order types?<br />Is Species without the argument a second order type?<br />But with the argument Species is a first order type?<br />Thanks,<br />Pat<br />-- Elephant and Dog types<br />data Elephant = Elephant deriving Show<br />data  Dog = Dog deriving Show<br /><br />-- The LHS &quot;Species a&quot; is a type constructor?<br />data Species a = Species a deriving Show<br /><br />-- is-a means  “Dog is a species” rather than “Fido is a dog” <br />class Taxonomy f where<br />  isA::f a -&gt; a<br />  <br />instance Taxonomy Species where<br /> isA (Species x) = x<br />{-<br />isA (Species Elephant) <br />isA (Species Dog)<br />:t Species Dog  ===&gt; Species Dog :: Species Dog<br />:k Species Dog ===&gt; Species Dog :: *<br />:k Species  ===&gt; Species :: * -&gt; *<br />((isA (Species Elephant))::Species) ===&gt; Expecting an ordinary type, but found a type of kind * -&gt; *<br />-}<br /><br />
<br clear=all> Tá an teachtaireacht seo scanta ó thaobh ábhar agus víreas ag Seirbhís Scanta Ríomhphost de chuid Seirbhísí Faisnéise, ITBÁC agus meastar í a bheith slán.  <a href="http://www.dit.ie">http://www.dit.ie</a><br>
This message has been scanned for content and viruses by the DIT Information Services E-Mail Scanning Service, and is believed to be clean.  <a href="http://www.dit.ie">http://www.dit.ie</a>