[Haskell] auto-qualification of identifiers in Haddock

Wolfgang Jeltsch wolfgang at jeltsch.net
Sun May 16 00:50:44 EDT 2004


take the following module:
    module InfiniteList where
        import Prelude hiding (repeat)

        data InfiniteList e = InfiniteList e (InfiniteList e)

            Essentially the same as 'Prelude.repeat'.
        repeat :: e -> InfiniteList e
        repeat e = l where l = InfiniteList e l
If I feed Haddock with this module, the resulting HTML page reads
    Essentially the same as repeat.
at the end.  But since repeat is also an identifier of the current module, 
this is IMO misleading.

Maybe Haddock should produce the string
    Essentially the same as Prelude.repeat.
instead of the above—not because the source code comment says "Prelude.repeat" 
(Source code "spelling" depends on the exact form of import declarations(?) 
and is therefore not always suited for Haddock output.) but just because it's 
the Prelude version of repeat what's mentioned here.

What do others think about this issue?


More information about the Haskell mailing list