On 23.08.2013 00:36, Brian Lee Yung Rowe wrote:
You raise an interesting point that I've mulled over a bit: namespace 
collisions. How many of these issues would go away if there were a better 
mechanism for managing namespaces? eg in other languages you can control which 
objects/modules you wish to import from a library. Under this regime I think 
package developers would be less concerned about exposing functions that 
otherwise would be private.


Exactly, the corresponding NAMESPACE directive is

importFrom()

and it should be used.


On Aug 22, 2013, at 6:27 PM, Gabor Grothendieck <ggrothendi...@gmail.com> wrote:

If ::: is disallowed then its likely that package developers will need
to export more functions to satisfy the consumers of those otherwise
hidden functions but if more functions are exported then there
will be a greater likelihood of conflicts among packages.

The problem seems to be that there are potentially three sorts of
functions here:

1. a function is hidden
2. a function is accessible via ::: but is not on the search path
3. a function is on the search path


Not entirely right:

If the package or only parts of it are imported via importFrom by another package, the package is not loaded, hence not on the search path.

Best,
Uwe Ligges


The problem arises in attempting to force fit these three concepts
into only two
categories either by removing the first category (as was done previously)
or by removing the second category (which seems to be the new approach).

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to