autoload                package:base                R Documentation

On-demand Loading of Packages

Description:

     'autoload' creates a promise-to-evaluate 'autoloader' and stores
     it with name 'name' in '.AutoloadEnv' environment. When R attempts
     to evaluate 'name', 'autoloader' is run, the package is loaded and
     'name' is re-evaluated in the new package's environment.  The
     result is that R behaves as if 'file' was loaded but it does not
     occupy memory.

     '.Autoloaded' contains the names of the packages for which
     autoloading has been promised.

Usage:

     autoload(name, package, reset = FALSE, ...)
     autoloader(name, package, ...)

     .AutoloadEnv
     .Autoloaded

Arguments:

    name: string giving the name of an object.

 package: string giving the name of a package containing the object.

   reset: logical: for internal use by 'autoloader'.

     ...: other arguments to 'library'.

Value:

     This function is invoked for its side-effect.  It has no return
     value.

See Also:

     'delayedAssign', 'library'

Examples:

     require(stats)
     autoload("interpSpline", "splines")
     search()
     ls("Autoloads")
     .Autoloaded

     x <- sort(stats::rnorm(12))
     y <- x^2
     is <- interpSpline(x,y)
     search() ## now has splines
     detach("package:splines")
     search()
     is2 <- interpSpline(x,y+x)
     search() ## and again
     detach("package:splines")

