<div dir="ltr"><div><div><div><div>+1 to {-# WARNING #-}<br></div>+0.5 to deprecation/removal<br><br></div>I've used it, but for all the fans of fromJust, here's some code golf:<br><br>(fromMaybe (error "impossible"))<br>(fromMaybe undefined)<br>(\(Just x) -> x)<br><br></div>The last one is shortest, and with it ghc can tell you you're doing something partial.<br><br></div>Tom<br><br><div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Feb 25, 2015 at 1:25 AM, Konstantine Rybnikov <span dir="ltr"><<a href="mailto:k-bx@k-bx.com" target="_blank">k-bx@k-bx.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">Maybe it would make sense to incorporate fromJustNote (as in `safe` package) and highly recommend that one in docs? It makes it easier to debug error and to realize that it will throw an error on Nothing.</p>
<div class="gmail_quote">25 лют. 2015 00:36, користувач "Daniel Díaz" <<a href="mailto:dhelta.diaz@gmail.com" target="_blank">dhelta.diaz@gmail.com</a>> написав:<div><div class="h5"><br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi.<br>
<br>
This function has been guilty (more than once) of making my debugging harder by providing<br>
too little error information. Sure, the programmer who wrote the code should have made<br>
sure that the argument could not possibly be Nothing, but that didn't stopped him/her<br>
to use fromJust. Yes, there is always a way to make an "error" happen, but without<br>
fromJust you'll have to do so explicitly. I think we should encourage good practices.<br>
Just my point of view.<br>
<br>
The downside I see are the current occurrences of fromJust all around. I guess they are<br>
a huge lot. Although I would love to get rid of them, this would require some work (even<br>
if it's very little) from a lot of developers. So if we want to do this, a consensus<br>
must be built first.<br>
<br>
Therefore, +1 from me.<br>
<br>
Best regards,<br>
Daniel Díaz.<br>
<br>
On 02/24/2015 06:42 AM, Erik de Castro Lopo wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all,<br>
<br>
We currently have in the Data.Maybe module from base:<br>
<br>
      fromJust :: Maybe a -> a<br>
<br>
which newbies often find using hoogle or other search tools and is<br>
a huge trap. *Every* usage of the above can be replaced by using<br>
<br>
       fromMaybe :: a -> Maybe a -> a<br>
<br>
which forces the user to provide a default value for the case where<br>
the Maybe a is a Nothing.<br>
<br>
The idea would be to deprecate fromMaybe for 7.12 and remove it<br>
completely later.<br>
<br>
Comments?<br>
<br>
Erik<br>
</blockquote>
<br>
______________________________<u></u>_________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" target="_blank">http://mail.haskell.org/cgi-<u></u>bin/mailman/listinfo/libraries</a><br>
</blockquote></div></div></div>
<br>_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
<br></blockquote></div><br></div>