On Fri, Apr 8, 2016 at 10:34 PM, Hadley Wickham <h.wick...@gmail.com> wrote:
> In that scenario, I would expect that QCA would suggest Venn and Venn > would suggest QCA. Then there's no circular dependency problem. > Right, this is exactly what I was pointing myself in the first email: - make package A dependent on package B (so that the namespace of B is automatically available when loading package A) - make package B "Suggest" package A (not "Depend" which leads to circular dependency), and that if I am not mistaken will lead to automatically install package A when package B is installed - use requireNamespace("A") inside the function(s) of package B which uses functions of package A - directly use A::foo() inside those functions The only trouble with "Suggest" is the namespace of A is not automatically loaded with package B (the reverse would work because package A depends on package B). So the only other option that I found was to make use of requireNamespace() and use A::foo() inside the functions of B. Or as Hadley advices, make both packages A and B suggest each other and use requireNamespace() inside the functions of both. That would also work. Adrian -- Adrian Dusa University of Bucharest Romanian Social Data Archive Soseaua Panduri nr.90 050663 Bucharest sector 5 Romania [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel