<br><tt><font size=2>Hello,</font></tt>
<br>
<br><tt><font size=2>This compiles fine:</font></tt>
<br>
<br><tt><font size=2> foo :: forall b. (b -> String, Int)</font></tt>
<br><tt><font size=2> foo = (const "hi", 0)</font></tt>
<br><tt><font size=2> </font></tt>
<br><tt><font size=2> bar :: (forall b. b -> String, Int)</font></tt>
<br><tt><font size=2> bar = (const "hi", 0)</font></tt>
<br>
<br><tt><font size=2>but changing the definition of bar to:</font></tt>
<br>
<br><tt><font size=2> bar = foo</font></tt>
<br>
<br><tt><font size=2>causes a type error.</font></tt>
<br>
<br><tt><font size=2>-Jeff</font></tt>
<br>
<span style="font-family:'Arial',sans-serif; font-size:8pt; color:#000000">---<br>
<br>
This e-mail may contain confidential and/or privileged information. If you <br>
are not the intended recipient (or have received this e-mail in error) <br>
please notify the sender immediately and destroy this e-mail. Any <br>
unauthorized copying, disclosure or distribution of the material in this <br>
e-mail is strictly forbidden.</span>