Winston Chang showed (http://rpubs.com/wch/46428) that accessing objects in environments is fastest by using e[["n"]], where e is an environment and n a name of an object. Here, benchmarks are listed for assigning objects.


Result (median in micro seconds):

##   median                                          expr
## 1 0.1440                                  X <- letters
## 2 0.4420         .Internal(assign("X", letters, e, F))
## 3 1.1820                           e[["X"]] <- letters
## 4 1.2570                                e$X <- letters
## 5 1.8380 assign("X", letters, envir = e, inherits = F)
## 6 1.9415         assign("X", letters, e, inherits = F)

Code:

library(microbenchmark)
e <- new.env()
e$X <- letters
summary(
  microbenchmark(
    X <- letters,
    .Internal(assign("X", letters, e, F)),
    e[["X"]] <- letters,
    e$X <- letters,
    assign("X", letters, envir = e, inherits = F),
    assign("X", letters, e, inherits = F),
    unit = "us", times = 500L))[,c("median","expr")]

s


sessionInfo()
## R version 3.1.1 (2014-07-10)
## Platform: x86_64-unknown-linux-gnu (64-bit)
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] microbenchmark_1.4-2
## 
## loaded via a namespace (and not attached):
##  [1] colorspace_1.2-4 digest_0.6.4     evaluate_0.5.5   formatR_1.0     
##  [5] ggplot2_1.0.0    grid_3.1.1       gtable_0.1.2     htmltools_0.2.6 
##  [9] knitr_1.7        lattice_0.20-29  MASS_7.3-33      multcomp_1.3-7  
## [13] munsell_0.4.2    mvtnorm_1.0-0    plyr_1.8.1       proto_0.3-10    
## [17] Rcpp_0.11.3      reshape2_1.4     rmarkdown_0.3.3  sandwich_2.3-2  
## [21] scales_0.2.4     splines_3.1.1    stringr_0.6.2    survival_2.37-7 
## [25] TH.data_1.0-3    tools_3.1.1      yaml_2.1.13      zoo_1.7-11