I agree that Control.Exception seems like a very strange place for `evaluate` to be publicly exported.  However, I've never wanted that function except in the context of forcing evaluation of a pure value in order to catch exceptions.  I also can't think of any other use cases that aren't more easily solved by seq/bang patterns.  If the only use case is in fact exception handling, Control.Exception seems like a pretty good location.<br><div class="gmail_quote">On Wed Jan 07 2015 at 11:45:39 AM Henning Thielemann <<a href="mailto:lemming@henning-thielemann.de">lemming@henning-thielemann.de</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
> On Tue, Jan 6, 2015 at 11:36 PM, David Feuer <<a href="mailto:david.feuer@gmail.com" target="_blank">david.feuer@gmail.com</a>> wrote:<br>
<br>
>> The evaluate function is defined in <a href="http://GHC.IO" target="_blank">GHC.IO</a>, and exported publicly by<br>
>> Control.Exception. This strikes me as an extremely strange place for<br>
>> it.<br>
<br>
I also find the place strange. If there would be a module with a type<br>
class for seq (like Eval), it would be certainly a good place for<br>
'evaluate'.<br>
______________________________<u></u>_________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank">Libraries@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/libraries" target="_blank">http://www.haskell.org/<u></u>mailman/listinfo/libraries</a><br>
</blockquote></div>