úÎF;Takes an IO as action to run, and a String as given stdin, ; then returns whole stdout and stderr as String of tuple. $ import System.IO.Capture (capture)  8 main = print =<< capture (getLine >>= putStr) "foobar"  -- prints ("foobar","") io-capture-0.3System.IO.Capturecapture forkHandle catchSome