[Rd] Active bindings in attached environments

Jeff Horner jeff.horner at vanderbilt.edu
Thu Nov 5 16:41:31 CET 2009


Hi,

I was wondering if this is expected behavior for active bindings in 
attached environments, or if this is a bug:

 > e <- new.env()
 > makeActiveBinding('x',function() 'foo',e)
 > ls(e)
[1] "x"
 > attach(e)
 > search()
[1] ".GlobalEnv"        "e"                 "package:graphics"
[4] "package:grDevices" "package:datasets"  "package:utils"
[7] "package:methods"   "Autoloads"         "package:base"
 > x
function() 'foo' # Should this print 'foo' ?

This works as I would expect:

 > with(e,x)
[1] "foo"

but this doesn't:

 > f <- function() x
 > f()
function() 'foo'

However, changing the environment of f does:

 > environment(f) <- e
 > f()
[1] "foo"


Jeff



More information about the R-devel mailing list