Proposal: add ifM and whenM to Control.Monad

Mario Pastorelli pastorelli.mario at gmail.com
Mon Apr 21 16:59:14 UTC 2014


On 04/21/2014 06:56 PM, David Mazieres wrote:
> Mario Pastorelli <pastorelli.mario at gmail.com> writes:
>
>> Only the name 'mif' respects the rules with this type. The more generic
>> version of 'ifM' is
>>
>> ifM :: Monad m => m Bool -> a -> a -> a
>>
>> and I don't think there is a name conversion for this kind of function
>> in Control.Monad.
> Well, if you could actually implement the above function, convention
> would likely dictate that it be called "unsafeIf".
>
> David

Yes, you are right. That's wrong, please ignore it. The type of ifM is

ifM :: Monad m => m Bool -> m a -> m a -> m a

so prepending 'm' is ok.


More information about the Libraries mailing list