[Haskell] Hierarchical module namespace extension
Malcolm.Wallace at cs.york.ac.uk
Tue Mar 8 10:39:23 EST 2005
"Simon Marlow" <simonmar at microsoft.com> writes:
> > module R( qualified module Q( f,g ) ) where
> > f = ...; g = ...
> If we're going to allow (... items ...) at all, then I suggest instead
> that the last example be written:
> module R( qualified module R(f,g) as Q ) where
> f = ...; g = ...
I initially understood the first form to mean something different,
although admittedly the original example does not actually illustrate
module R( f,g, qualified module Q( f,g ) ) where
import qualified Q (f,g,h)
f = ...; g = ...
That is, the subordinate items mentioned in conjunction with the
qualified export are a subset of those imported from Q, not those
defined in R. Within the subordinate clause of the export list, they
do not need further qualification since they belong unambiguously to Q.
More information about the Libraries