[Rd] attributes of environments

Gabor Grothendieck ggrothendieck at gmail.com
Wed Jul 5 05:12:11 CEST 2006

In the code below, e is an environment which we copy to f and then
add attributes to e.  Now f winds up with the same attributes.

In other words it seems that the attributes are a property of the
environment itself and not of the variable.  Thus it appears we
cannot have two environment variables that correspond to the
original environment but with different attributes.

I can understand if we changed a component of e then
f would reflect that too but I am not sure that this is also
desirable for attributes as they are not "in" the environment.

Is that desirable?  Is it a bug?  No other class works that way
AFAIK.   Comments?

> e <- new.env()
> f <- e
> attr(e, "X") <- "Y"   # X is an attribute of e
> f  # f gets the same attribute !!!
<environment: 0x01a577f0>
[1] "Y"
> R.version.string # Windows XP
[1] "R version 2.4.0 Under development (unstable) (2006-07-04 r38480)"

More information about the R-devel mailing list