<div dir="ltr"><div>"Preserving user bottoms" was found to be better behavior for us with Void as well back in the day. Evaluating such a term to get the bottom out is better than making up one that loses information for the user about precisely what bottom it is they had. We do so with absurd and the like for Void. </div><div><br></div><div>This way if you map over a structure with errors at the leaves you get a new structure with those same errors at the leaves.</div><div><br><div><b>tl;dr</b> +1 from me. </div><div><br></div>-Edward<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Jan 15, 2017 at 11:00 PM, Kevin Cotrone <span dir="ltr"><<a href="mailto:kevincotrone@gmail.com" target="_blank">kevincotrone@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span style="font-size:12.8px">That seems to have a surprising strictness.</span><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">I'm not sure if it would be the best idea to try and evaluate a type with no inhabitants.</div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Sun, Jan 15, 2017 at 2:37 PM, David Feuer <span dir="ltr"><<a href="mailto:david.feuer@gmail.com" target="_blank">david.feuer@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="auto">Currently, if you write<div dir="auto"><br></div><div dir="auto">data V a deriving Functor</div><div dir="auto"><br></div><div dir="auto">GHC generates</div><div dir="auto"><br></div><div dir="auto">fmap _ _ = error "Void fmap"</div><div dir="auto"><br></div><div dir="auto">This seems quite unfortunate, because it loses potentially useful error information:</div><div dir="auto"><br></div><div dir="auto">fmap (+ 3) (error "Too many snozzcumbers!")</div><div dir="auto"><br></div><div dir="auto">throws "Void fmap", rather than the much more precise "Too many snozzcumbers!" I've opened Trac #13117 to fix this, but I figured I should double check that no one is opposed.</div><span class="m_3356142130009345805HOEnZb"><font color="#888888"><div dir="auto"><br></div><div dir="auto">David Feuer</div></font></span></div>
<br></div></div>______________________________<wbr>_________________<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" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bi<wbr>n/mailman/listinfo/libraries</a><br>
<br></blockquote></div><br></div>
<br>______________________________<wbr>_________________<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" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-<wbr>bin/mailman/listinfo/libraries</a><br>
<br></blockquote></div><br></div>