<div class="gmail_quote">On Fri, May 29, 2009 at 3:38 PM, Bartosz Wójcik <span dir="ltr">&lt;<a href="mailto:bartek@sudety.it">bartek@sudety.it</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Thank you, this is an easy and nice solution. I&#39;ve made it a bit prettier<br>
optically:<br>
<br>
myFloat = try (symbol &quot;-&quot; &gt;&gt; float &gt;&gt;= return . negate)<br>
     &lt;|&gt;  try float<br>
     &lt;|&gt;  (integer &gt;&gt;= return . fromIntegral)<br>
</blockquote><div><br>Any time you see &quot;&gt;&gt;= return .&quot;, something is being missed. Use liftM or &lt;$&gt; instead, i.e. &quot;fromIntegral &lt;$&gt; integer&quot; instead of &quot;integer &gt;&gt;= return . fromIntegral&quot;.</div>
</div>