The biggest problem is that with each one of these being so short and with so many useful variations, the concepts struggle to cross the "Fairbairn threshold".

On Tue, Feb 14, 2012 at 10:47 AM, Jeff Shaw <shawjef3@msu.edu> wrote:
I'm all for generalizations! I have a second, very similar function I think should be added, but I don't have a good name for it.

maybe mzero id :: MonadPlus m => Maybe (m a) -> m a

Perhaps there is once again an equivalent for Alternative.


On 2/14/2012 10:24 AM, Edward Kmett wrote:
If you are going to add one then the generalization of your generalization to Alternative might be better.

maybeA = maybe empty pure

On Feb 14, 2012, at 9:55 AM, Jeff Shaw<shawjef3@msu.edu>  wrote:

I find myself using this function quite a lot. I believe it should be included in Data.Maybe.

import Control.Monad

maybeTo :: (MonadPlus m) =>  Maybe a ->  m a
maybeTo =
   maybe mzero return

_______________________________________________
Libraries mailing list
Libraries@haskell.org
http://www.haskell.org/mailman/listinfo/libraries