R 3.2.4
OS X and Windows

Colleagues,

I distribute some code to co-workers and I am trying to simplify their task.  
The issue is as follows:

1.  The code automates an extensive set of processes.  Many of the steps are 
standardized.  However, some of the steps may require that users write snippets 
of code, stored in R scripts.

2.  If users write their own code, it might appear in files named UserCode1.R, 
UserCode2.R, etc..  The master code checks for the existence of this code, then 
executes
        source(“/path/to/UserCode1.R”)
This can occur at many different points in the master code (each time sourcing 
a different file).  
In addition to the command above, there are a variety of other commands testing 
whether the file exists and whether it contains certain commands that I don’t 
allow the user to execute.
In order to simplify the code, these commands are embedded in a function (which 
I will call MODIFYCODE for the moment).

3.  Assume that an object within the master code is named TEMP.  The user might 
add a column to TEMP.  Since this occurs within a function, there are two ways 
to get this modification back to the original environment:
        a.  within the function:        TEMP    <<- TEMP
        b.  use the return value from the function:
                TEMP    <-   MODIFYCODE()

4.  There are disadvantages to each of these:
        a.  The user needs to know that the “<<-“ command must be invoked.  If 
they don’t do so, the changes within the function are not available in the 
master environment
        b.  I don’t know what code will be written by the user, i.e., they 
might manipulate TEMP or they might create a new object or something else.  So, 
I don’t know a priori what to return.

So, my question is: is there some way to manipulate environments such that the 
changes within the function are AUTOMATICALLY transferred to the environment 
outside the function?

Dennis

Dennis Fisher MD
P < (The "P Less Than" Company)
Phone / Fax: 1-866-PLessThan (1-866-753-7784)
www.PLessThan.com <http://www.plessthan.com/>





        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to