-1 from me, adding things to base like this is a step backwards IMO. I don't see a problem with adding a generalize evaluate to primitive as well, however. We could also consider adding an evaluateST function somewhere in base, if that was desired (I've personally never needed it, but I could imagine it being useful).<br><br><div class="gmail_quote">On Wed Jan 07 2015 at 5:41:06 PM David Feuer <<a href="mailto:david.feuer@gmail.com">david.feuer@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">Apparently, there was an issue with my last messages about this for some people, so here's the idea again:</p>
<p dir="ltr">We could generalize Control.Exception.evaluate to</p>
<p dir="ltr">evaluate :: PrimMonad m => a -> m a<br>
evaluate a = primitive (\s -> seq# a s)</p>
<p dir="ltr">and then export it from Control.Monad.Primitive as well, which seems to me a much more natural place for it. The only challenge is that the PrimMonad class would need to be moved to base.</p>
______________________________<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>