Everybody is claiming that using lift is a bad thing. So, I come to remedy this problem.
Stop lifting, start using shinny operators like this one: (^$) :: Monad m => m a -> (a -> b -> c) -> m b -> m c (^$) = flip liftM2 Then you can do wonderful stuff and you will never read the four-letter word in your code again: \> Just 42 ^$(+)$ Nothing Nothing \> Just 10 ^$(+)$ Just 20 Just 30 \> let add = (+) \> Just 30 ^$ add $ Just 12 Just 42
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe