Hi,

I noticed some time ago the fact that qualified imports doesn't affect the
generated documentation.
It's kind of clumsy in case of libraries that define a lot of synonyms
(vector and bytestring come in my mind first).
For instance, in the package utf8-string:
http://hackage.haskell.org/packages/archive/utf8-string/0.3.7/doc/html/Data-ByteString-UTF8.html

Here, the documentation doesn't say that the
utf8-string/Data.ByteString.UTF8.ByteString datatype used all along comes
in fact from Data.ByteString.
If it were instead a new implementation of ByteString (as for
bytestring/Data.ByteString.Char8.ByteString) the documentation would look
exactly the same, so to disambiguate to reader has to crawl through the
code to get to the initial definition.
(clicking on a 'ByteString' doesn't even redirect you to the original
bytestring/Data.ByteString page)

It should be written that this 'ByteString' is not a newly defined type but
instead a re-exportation.

It's even worse when you see the doc of a module that uses in the meantime
lazy and strict ByteStrings, or normal and unboxed/storable/<insert flavour
here> vector: you have to hover the type name to see which haddock page it
points to.

In that case, a solution might be to indicate on top of the doc page that
it uses another module as a qualified import, and to keep the prefixes in
the function signatures.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to