
7 Dec
2005
7 Dec
'05
4:18 p.m.
On 12/7/05, Robin Green
Let's say you want to write a function
seqPair :: (Monad m) => (m a, m b) -> m (a, b)
which returns a computation which does the left computation followed by the right computation (i.e. it's like the sequence function, but for pairs instead of lists).
In this case, I believe it is as simple as import Control.Monad (liftM2) seqPair = liftM2 (,) /g -- We have lingered in the chambers of the sea By sea-girls wreathed with seaweed red and brown Till human voices wake us, and we drown.