[R] Problem with scoping a variable value
Tolga Uzuner
tolga at coubros.com
Thu Feb 16 20:38:18 CET 2006
Hi there,
I have a function which has a variable called show as an input:
richardson.grad <- function(func, x, d=0.01, eps=1e-4, r=6, show=F){
# do some things
if(show) {
cat("\n","first order approximations", "\n")
print(a.mtr, 12)
}
#do more things and return
}
The show variable is being used as a flag to show intermediate results.
Interestingly enough, I have downloaded a package recently which defines
the show variable as a function:
> show
standardGeneric for "show" defined from package "methods"
function (object)
standardGeneric("show")
<environment: 01676F7C>
Methods may be defined for arguments: object
>
Now, all of a sudden, the function I had defined earlier is scoping up
to this new value, and is thus not working:
> richardson.grad(function(x) x^2,2)
Error in if (show) { : argument is not interpretable as logical
>
I could always redefine show in richardson.grad to be something else but
something seems wrong: why is richardson.grad not looking up show's
value in the function ? How would I fix this ?
Thanks in advance,
Tolga
More information about the R-help
mailing list