On Jan 30, 2010, at 11:08 AM, Guillaume Yziquel wrote:

> Hi.
> 
> I would like to know how to start an embedded R session, and avoid datasets 
> and the standard library packages to be loaded on startup.
> 
> I've been looking at littler's code (so this is partly a question to Dirk 
> Eddelbuettel...):
> 
>>        /* We don't require() default packages upon startup; rather, we
>>         * set up delayedAssign's instead. see autoloads().
>>         */
>>        if (setenv("R_DEFAULT_PACKAGES","NULL",1) != 0){
>>                perror("ERROR: couldn't set/replace R_DEFAULT_PACKAGES");
>>                exit(1);
>>        }
> 
> The code above happens before Rf_initEmbeddedR in littler.
> 
> So I gather that just setting R_DEFAULT_PACKAGES to NULL should be OK. But 
> then, what is the rather complicated stuff in the autoload() function in 
> littler.c for?
> 
> And concerning datasets, how do you avoid loading them?
> 

Setting R_DEFAULT_PACKAGES to NULL makes sure that default packages are not 
loaded. Note that "datasets" are not loaded at all -- you can load the datasets 
package which will make them available, but they are not really "loaded". The 
minimal setup is simply

R_DEFAULT_PACKAGES=NULL R --vanilla

However, it's your responsibility to load any packages that your code needs in 
that case.

Cheers,
Simon

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

Reply via email to