<br><div class="gmail_quote">On 11 April 2010 22:54, Jason Dagit <span dir="ltr">&lt;<a href="mailto:dagit@codersbase.com">dagit@codersbase.com</a>&gt;</span> wrote:<br><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">
<div> </div></blockquote><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">...<br></blockquote><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">
<div> </div></blockquote><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">class Vehicle a where<div class="gmail_quote"><div><br></div><div>data Car</div>
<div>data Truck</div><div><br></div><div>instance Vehicle Car where</div><div>instance Vehicle Truck where</div><div><br></div><div>Now you can have things that take a Car or a Truck or they can take a Vehicle instead.</div>

<div><br></div><div>moveVehicle :: Vehicle v =&gt; v -&gt; Simulation ()</div><br></div></blockquote><div><br>unfortunately, now you cannot use pattern matching while defining moveVehicle. <br><br></div><div><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">
...<br></blockquote><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote"> <br></blockquote></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="gmail_quote"><div>Jason</div></div>
<br></blockquote></div><br><br clear="all"><br>-- <br>Ozgur Akgun<br>