Re: [R] clean programming

From: Duncan Murdoch <>
Date: Sun, 16 Dec 2007 09:44:04 -0500

On 16/12/2007 9:25 AM, wrote:
> Hello the list,
> I am trying to write a "cleanProgramming" function to test the
> procedure I use. For example, I want to be sure that I am not using
> globals variables. The function "findGlobals" detect that.
> To list the globals used in function "fun", the syntax is :
> "findGlobals(fun,FALSE)$variable"
> My problem is that I want to use it in a function, something like :
> cleanProg <- function(name){
> if(length(findGlobals(name,FALSE)$variable>0){
> cat("Warnings: there is globals is function ",name,"\a\n")
> }
> }
> But findGlobals take a function as first argument, not a variable
> containing a function name.
> Anyway to solve that?

Use get() to find an object with a given name. You need to be careful to specify where it should look (the envir argument); typically parent.frame() is appropriate, but your cleanProg function should allow the user to override this.

Duncan Murdoch mailing list PLEASE do read the posting guide and provide commented, minimal, self-contained, reproducible code. Received on Sun 16 Dec 2007 - 14:51:26 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Sun 16 Dec 2007 - 15:30:19 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.