From jeff.horner at vanderbilt.edu  Thu Nov  5 16:41:31 2009
From: jeff.horner at vanderbilt.edu (Jeff Horner)
Date: Thu, 05 Nov 2009 09:41:31 -0600
Subject: [Rd] Active bindings in attached environments
Message-ID: <4AF2F22B.206@vanderbilt.edu>

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



[Rd] Active bindings in attached environments
Jeff Horner