Active bindings in attached environments

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Active bindings in attached environments

Jeffrey Horner

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"


[hidden email] mailing list