<div dir="ltr">I understand why the normal signature is:<div><br></div><div> when :: Monad m => Bool -> m () -> m ()</div><div><div> unless :: Monad m => Bool -> m () -> m ()</div><br class="Apple-interchange-newline">
</div><div>But why isn't there also:</div><div><br></div><div> when_ :: Monad m => Bool -> m a -> m ()</div><div><div> unless_ :: Monad m => Bool -> m a -> m ()</div><br class="Apple-interchange-newline">
</div><div>That is, I agree that results shouldn't be discarded "by default", but it should be easy to get rid of them if they are unneeded.</div><div><br></div><div>Thanks,</div><div><br></div><div> Oren Ben-Kiki</div>
<div><br></div></div>