Hi list,<div><br></div><div>GHC 6.10.1:</div><div><br></div><div>Prelude&gt; :t let f x y = return x == return y in f</div><div><div>let f x y = return x == return y in f :: (Eq (m a), Monad m) =&gt; a -&gt; a -&gt; Bool</div>

<div><br></div><div>Hugs (Sep 2006):</div><div><div><br></div><div>Hugs&gt; :t let f x y = return x == return y in f</div><div>ERROR - Ambiguous type signature in inferred type</div><div>*** ambiguous type : (Eq (a b), Monad a) =&gt; b -&gt; b -&gt; Bool</div>

<div>*** assigned to    : f</div><div><br></div><div>Who is right?</div><div><br></div><div>--</div><div>Thanks</div><div>Vladimir</div></div></div>