<div dir="ltr"><div>Prelude> :t (**)</div><div>(**) :: Floating a => a -> a -> a</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 9, 2015 at 12:14 PM, Venu Chakravorty <span dir="ltr"><<a href="mailto:c.venu@aol.com" target="_blank">c.venu@aol.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><font color="black" size="2" face="Arial, Helvetica, sans-serif"><font size="2">Hello there,</font>
<div><font size="2">This is just some toy program I was trying. I fail to understand why this works:<br>
</font>
<div><span style="font-size:small"><br>
</span></div>

<div><span style="font-size:small">=============================</span></div>

<div><span style="font-size:small">Prelude> zipWith (\ x y -> ((x ^ y) / (product [1..x]))) [1..3] [2,2,2]</span></div>

<div><font size="2">
<div>[1.0,2.0,1.5]</div>

<div>=============================</div>

<div><br>
</div>

<div>and this does not:</div>

<div><br>
</div>

<div>=============================</div>

<div>Prelude> zipWith (\ x y -> ((y ^ x) / (product [1..x]))) [1..3] [2,2,2]</div>

<div><br>
</div>

<div><interactive>:1:19:</div>

<div>    Ambiguous type variable `a' in the constraints:</div>

<div>      `Fractional a' arising from a use of `/' at <interactive>:1:19-44</div>

<div>      `Integral a' arising from a use of `^' at <interactive>:1:20-24</div>

<div>    Probable fix: add a type signature that fixes these type variable(s)</div>

<div>============================</div>

<div>Note that the "^" function has "x" and "y" flipped.</div>

<div><br>
</div>

<div>:t (^) says:</div>

<div>============================</div>

<div>
<div>(^) :: (Num a, Integral b) => a -> b -> a</div>
</div>

<div>============================</div>

<div><br>
</div>

<div>Could somebody please throw some light?</div>
</font></div>

<div><font size="2"><br>
</font>
<div style="clear:both"><font size="2">Thanks.</font></div>
</div>
</div>
</font><br>_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org">Beginners@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners">http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners</a><br>
<br></blockquote></div><br></div>