hello, On Wed, Sep 12, 2001 at 08:51:20AM -0700, Sigbjorn Finne wrote:
So, it's not considered an error if you do something like
module A ( B(C), ...some other stuff..., B(D) ) where ... data B = C | D
but C and D is exported. Is the extra flexibility of allowing duplicates really worth it?
although this is a little strange i think it should be allowed (an implementation could still produce a warning). here is an example of a simillar situation, where it is not as obvious that constructors of the same datatype are being exported. --------------- module A where data T = C | D --------------- ------------------------- module B (module A) where import A ------------------------- --------------------------------- module C ( A.T(C), B.T(D) ) where import A import B --------------------------------- bye iavor