| However, I think there is a risk that name clashes may be 
| introduced. If module A defines and exports f, and imports 
| (qualified) and exports module B, which also defines f, then 
| a module C that imports A has two fs, both of which have the 
| qualified name A.f in C, even though there is no conflict in 
| A. This suggests that only unqualified imports should be 
| exported in a "module X" export list entry. 

The Report already covers this point (though I don't have it to hand).
There must be no name clashes among the *unqualified* names of the
exported things; so in your example, module A's export list is illegal.

Simon

_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to