Is it possible to write a function redirect :: Handle -> IO () -> IO () so that "redirect h action" is just like action, except that all the output written to stdout now gets sent to h instead? Thanks, Chad