<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>I think the vast majority of the functions presented in this
proposal have a total counterpart, whether it is a function or a
code pattern. We have NonEmpty in `base`, as well as
ExceptT/MonadError and Exceptions to allow us to mimic such a
cul-de-sac in the code with appropriate annotations around it.<br>
<br>
</p>
<div class="moz-cite-prefix">Le 31/05/2021 à 18:15, Henning
Thielemann a écrit :<br>
</div>
<blockquote type="cite"
cite="mid:3bf2a39d-953e-3b12-349-30ab8d07872@henning-thielemann.de">
<br>
On Mon, 31 May 2021, Ryan Trinkle via Libraries wrote:
<br>
<br>
<blockquote type="cite">I certainly agree that a more systemic
solution would be preferable.
<br>
However, none have been forthcoming in the 15 or so years I've
been
<br>
using Haskell. The use of partial functions in library code has
been
<br>
one of the few consistent sources of multi-day debugging
exercises in
<br>
Haskell that I've seen, and even cutting that down in an ad-hoc
way
<br>
would be valuable, since there are probably a dozen functions
that
<br>
account for 80% of the debugging hours (I'd certainly like to
see
<br>
fromJust on that list, for example).
<br>
</blockquote>
<br>
I understand the proposal as tagging all partial functions in a
compiler accessible way, in order to tell the user: Don't use that
function!
<br>
<br>
If so, then we should make sure that every such tagged function
has a total counterpart.<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
Libraries mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Libraries@haskell.org">Libraries@haskell.org</a>
<a class="moz-txt-link-freetext" href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a>
</pre>
</blockquote>
<pre class="moz-signature" cols="72">--
Hécate ✨
🐦: @TechnoEmpress
IRC: Hecate
WWW: <a class="moz-txt-link-freetext" href="https://glitchbra.in">https://glitchbra.in</a>
RUN: BSD</pre>
</body>
</html>