From ggrothendieck at gmail.com  Thu Jul 31 01:41:48 2008
From: ggrothendieck at gmail.com (Gabor Grothendieck)
Date: Wed, 30 Jul 2008 19:41:48 -0400
Subject: [Rd] Name clashes among packages
Message-ID: <971536df0807301641g58fa155eo5faae388d862b50a@mail.gmail.com>

To handle name clashes among packages I wonder if we could
have a namespace setting between exported and not-exported
which is exported but you have to use :: (two dots) to access its
objects.  The difference between mandatory two dot and
three dots in this case is that the
exported objects are intended to be accessed whereas the
three dot ones are not and it may be important to retain
that distinction even though you have to explicitly preface both.

If the package uses this intermediate form of exporting then
it could be guaranteed that there are no name clashes.

Perhaps it should be possible to specify this on an object by object
basis within the package.

This could be useful for larger projects made up of many packages.
Of course one can already just have the convention that one uses
two dots to access package objects but this would enforce it for
certain packages and allow those package to avoid the annoying
name clash warnings when loaded.



[Rd] Name clashes among packages
Gabor Grothendieck