Package Info


Pretty printing for well-behaved Show instances


Automatically derived Show instances are an easy way to inspect data in your program. However, for large data-structures, the resulting output lacks whitespace, making it unreadable. Groom offers an replacement to show' calledgroom' which attempts to pretty-print the output of `show'. For example:

> let x = parseExp "foobar 1 [1,2]" > in do > putStrLn (show x) > putStrLn (groom x)

results in:

> ParseOk (App (App (Var (UnQual (Ident "foobar"))) (Lit (Int 1))) (List [Lit (Int 1),Lit (Int 2)])) > ParseOk > (App (App (Var (UnQual (Ident "foobar"))) (Lit (Int 1))) > (List [Lit (Int 1), Lit (Int 2)]))

Groom works only on Show instances that output valid Haskell code; if Groom can't understand its input, it will not make any changes.

License: BSD-3-Clause



Package Version Update ID Released Package Hub Version Platforms Subpackages info GA Release 2018-07-31 15
  • ppc64le
  • ghc-groom
  • ghc-groom-devel info GA Release 2018-07-30 15
  • x86-64
  • ghc-groom
  • ghc-groom-devel