I think this topic is covered in Andrew Gordon's dissertation/book: Functional programming and input/output by Andrew D. Gordon You can read it online. Cheers, Paul -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20090409/2b21b453/attachment.htm