Hi Peter,<br><br>I&#39;m delighted to hear about your successes with Haskell programming!<br><br>I suspect that parametric polymorphism has a lot to do with phenomenon of works-when-it-compiles.&nbsp; The more polymorphic a signature is, the fewer the possible type-correct definitions.&nbsp; Luckily, the definition that &quot;works&quot; is one of the few type-correct ones.&nbsp; As John Reynolds and then Phil Wadler showed, some useful properties necessarily hold purely as a consequence of the polymorphic type, regardless of the implementation.&nbsp; (See &quot;Theorems for free&quot;.)<br>
<br>&nbsp; - Conal<br><br><div class="gmail_quote">2009/2/14 Peter Verswyvelen <span dir="ltr">&lt;<a href="mailto:bugfact@gmail.com">bugfact@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
One of the things I liked a lot when working with C# was that as soon as my code compiled, it usually worked after an iteration of two.At least if we forget about the nasty imperative debugging that is needed after a while because of unanticipated and unchecked runtime side effects.<div>

<br></div><div><div>After heaving read about Haskell and having written some small programs for the last year or so, I&#39;m now finally writing a bigger program with it. It is not so easy yet since learning a language and trying to reach a deadline at the same time is hard :)&nbsp;</div>

<div><br></div><div>However, it is just amazing that whenever my Haskell program compiles (which to be fair can take a while for an average Haskeller like me ;-), it just... works! I have heard rumors that this was the case, but I can really confirm it.<br>

</div><div><br></div><div>A bit hurray for strong typing! (and if you don&#39;t like it, you can still use Dynamic and Typeable ;-)</div><div><br></div></div>
<br>_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
<br></blockquote></div><br>