The groom package
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 called groom 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.
Properties
| Versions | 0.1, 0.1.1, 0.1.2 |
|---|---|
| Dependencies | base (≥3 & <5), haskell-src-exts (≥1.0.0) |
| License | PublicDomain |
| Author | Edward Z. Yang |
| Maintainer | ezyang@mit.edu |
| Category | Text |
| Upload date | Mon Apr 29 01:23:11 UTC 2013 |
| Uploaded by | EdwardYang |
| Built on | ghc-7.6 |
Modules
- Text
Downloads
- groom-0.1.2.tar.gz (Cabal source package)
- package description (included in the package)