From ggrothendieck at gmail.com  Fri Jul 16 14:15:17 2010
From: ggrothendieck at gmail.com (Gabor Grothendieck)
Date: Fri, 16 Jul 2010 08:15:17 -0400
Subject: [Rd] Creating an environment with attributes in a package
In-Reply-To: <AANLkTin3LINSssOpwJtqsUsW1Mt-1PH8h9eIiW7H4xny@mail.gmail.com>
References: <AANLkTin3LINSssOpwJtqsUsW1Mt-1PH8h9eIiW7H4xny@mail.gmail.com>
Message-ID: <AANLkTilW8Q60qjUPXAOlFOIdd2ZS7xZsQLUTXmSmY8tp@mail.gmail.com>

On Fri, Jul 16, 2010 at 8:08 AM, Jon Clayden <jon.clayden at gmail.com> wrote:
> Dear all,
>
> I am trying to create an environment object with additional attributes, viz.
>
> Foo <- structure(new.env(), name="Foo")
>
> Doing this in a standard session works fine: I get the environment
> with attr(,"name") set as expected. But if the same code appears
> inside a package source file, I get just the plain environment with no
> attributes set. Using a non-environment object works as I would expect
> within the package (i.e. the attributes remain).
>
> I've looked through the documentation for reasons for this, and the
> only thing I've found is the mention in the language definition that
> "assigning attributes to an environment can lead to surprises". I'm
> not sure if this is one of the surprises that the author(s) had in
> mind! Could someone tell me whether this is expected, please?
>
> All the best,
> Jon

I had documented a few problems I found in R here:

   http://r-proto.googlecode.com

and you might want to go over them.  The item you mention is discussed
in #1 there.  This was written some time ago and there may have been
relevant changes to R since then so it would be a good idea to double
check everything with the current version of R.



[Rd] Creating an environment with attributes in a package
Gabor Grothendieck