Duncan Murdoch <murdoch.dun...@gmail.com> writes: > On 28/03/2014, 7:01 AM, Rainer M Krug wrote: >> Hi >> >> I would like to use namespaces outside packages, but I could not find >> any references on how to do it (only a thread [1] which says "use a >> package"). Using a package is not possible in my case, as I am passing >> variables from org-mode / emacs to R and would like to avoid name >> clashes. This is a dynamic process, and each time the code is evaluated, >> the variable can be different. >> >> I am putting them at the moment into an environment which is locked, but >> I would like to avoid name clashes, so the idea of using environments. >> >> So: is there a way to create a namespace and populate it as I can do >> with an environment? > > I don't know what you think is the difference between a namespace and > an environment. I would say a namespace is one of the environments > associated with a package, i.e. it's just an environment in a > particular context. > > So depending on what you are trying to accomplish, it may be fine to > just set up an environment. Why do you think that won't work?
An environment is what I use at the moment, but there is one aspect I was not happy with: accessing the original value in the environment when it is overwritten in a higher environment in the search path. But then I discovered then notation of using $: ,---- | env <- new.env() | assign("value", 99, env) | attach(env) | value <- FALSE | value | env$value `---- So I can access the original value. I only thought initially about the :: (or is it :::) to access the objects in a namespace, which do not work for an environment. So: Different solution and works perfectly. Thanks, Rainer > > Duncan Murdoch > -- Rainer M. Krug email: Rainer<at>krugs<dot>de PGP: 0x0F52F982
pgplciMLn7RLU.pgp
Description: PGP signature
______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel