Pretty Print example from Real World Haskell