I want to evaluate a function on a series of inputs:
f :: a -> Maybe b
then collect the results [b] if they are all Just, or terminate the computation immediately upon hitting Nothing.
This is exactly what mapM does in the Maybe monad, correct?
In particular I want to make sure that it will not try to evaluate anything past the first 'Nothing' result as the efficiency of my design is based on that.
D