[Haskell-cafe] Generalizing IO