[Haskell] Haskell I/O inside: down the rabbit's hole