On 9/19/2005 12:25 PM, Tomas Andersson wrote: > Dear all, > > I have come across some Windows Script code which calls the > "file.exists" function in R to check for the existence of a particular > file on an R server. This is what the code looks like: > > do > { > // some useful code > } > while (m_workspace.session.eval("file.exists(" + dataFile > + ")") != "1");
What is this function m_workspace.session.eval? It's not a base function. Perhaps its definition has changed? > > It appears that the behavior of this code is different when used with > R version 2.1.1 compared to R version 1.9.1. If the compare statement > s is changed from > > while (s != "1") > to > while (s != "True") > or > while !(s) > > the behavior of the code is the same with both versions of R. > > After reading the R documentation, I have not found any evidence that > the original syntax (s != "1") is in any way recommended or supported > (in version 2.1.1). Still, my questions are: s != "1" is perfectly valid R code. It will evaluate to TRUE in at least the following case: as.character(s) is not an NA, but isn't "1". s != "True" will evaluate to TRUE in most cases, unless s happens to contain that exact string. > > 1. Is it possible that the syntax has been supported in older versions of R? > 2. Is the reason for the recent change in behavior known and > documented anywhere? The syntax is fine, but it looks like a behaviour change in that function m_workspace.session.eval. You'll need to ask the author of that function what is happening. Duncan Murdoch ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html