haskell / pretty

Haskell Pretty-printer library
Other
69 stars 30 forks source link

Missing exportations in the Text.PrettyPrint module #40

Open asr opened 7 years ago

asr commented 7 years ago

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.

dterei commented 7 years ago

Thanks! I'll take a look at this shortly. I think I may switch the advice to be that the Text.PrettyPrint.HughesPJ module be the one you import and deprecate the Text.PrettyPrint one. It's annoying to have both and for this package to squat on the top-level namespace.

andreasabel commented 4 years ago

I'll take a look at this shortly.

Famous last words.