The documentation for Text.PrettyPrint says:
This module should be used as opposed to the HughesPJ module. Both are equivalent though as this module simply re-exports the other.
However, for example the function maybeParens defined in Text.PrettyPrint.HughesPJ is not exported by Text.PrettyPrint:
import Text.PrettyPrint
foo :: Bool -> Doc -> Doc
foo = maybeParens
-- Test.hs:5:7: error:
-- Variable not in scope: maybeParens :: Bool -> Doc -> Doc
Note also that in the above documentation, the module name 'HughesPJ' should be 'Text.PrettyPrint.HughesPJ'.
pretty version: 1.1.3.3.