require() and library() both emit this message immediately before running library():
"Loading required package: %s" https://github.com/r-devel/r-svn/blob/4198a2941b702d965bb2374c2b908f48c369f40a/src/library/base/R/library.R#L967-L968 https://github.com/r-devel/r-svn/blob/4198a2941b702d965bb2374c2b908f48c369f40a/src/library/base/R/library.R#L684-L685 Shouldn't "Loading" be "Attaching" instead? My understanding is "a package is loaded" is equivalent to "isNamespaceLoaded()", i.e., loadNamespace() was run. And that "a package is attached" is equivalent to "pkg %in% .packages()", i.e., library(pkg) was run. Is the terminology not so precise? There's certainly ambiguity in the internal variable names referenced above -- in require, we see loaded <- paste0("package:", package) %in% search() https://github.com/r-devel/r-svn/blob/4198a2941b702d965bb2374c2b908f48c369f40a/src/library/base/R/library.R#L680 Whereas in library() [via .getRequiredPackages2()] we see attached <- paste0("package:", pkg) %in% search() https://github.com/r-devel/r-svn/blob/4198a2941b702d965bb2374c2b908f48c369f40a/src/library/base/R/library.R#L931 Mike C ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel