<span style='font-family:Verdana'><span style='font-size:12px'>I think I am looking at the problem in a wrong way...<br /><br />What I want to do is using higher-order functions with IO (or an IO-based transformer).<br /><br />For example, let's say I want to apply a function to all the keys in a Map.<br />With pure functions, I would do:<br /> Map.mapKeys doSomething myMap<br /><br />But let's suppose the function has a signature:<br /> doSomething :: a -> IO b<br /><br />Is there an easy way to apply it?</span></span>