You can make use of
fmap :: Functor f => (a -> b) -> f a -> f b to performing a mapping over the values of a
IO is a functor, you can thus use this to post-process the result of an
Prelude> fmap (map (+2)) th [3,4,5,6]
You can also use the infix operator
(<$>) :: Functor f => (a -> b) -> f a -> f b which is an alias:
Prelude> map (+2) <$> th [3,4,5,6]
CLICK HERE to find out more related problems solutions.