[R] Another R syntax question
Richard A. O'Keefe
ok at cs.otago.ac.nz
Wed Sep 3 08:08:28 CEST 2003
The file src/library/base/R/print.R
contains this line:
x0 <- xm[okP]==0 != (as.numeric(Cf[okP])==0)
I didn't know R allowed that, and I wonder if it is deliberate?
In mathematics, you would expect x = y not= z to mean
(x = y) and (y not= z).;
In R, it is parsed as (x == y) != z.
While I have to admit that the spacing around == and != in print.R's
example does actually convey the actual association, in a vaguely
Principia Mathematica-ish way, I have to wonder:
Is R really seriously intended to swallow x == y != z without complaint?
If the line
%left GT GE LT LE EQ NE
in src/main/gram.y were changed to
%nonassoc GT GE LT LE EQ NE
then the line
x0 <- xm[okP]==0 != (as.numeric(Cf[okP])==0)
in src/library/base/R/print.R would have to be changed to
x0 <- (xm[okP]==0) != (as.numeric(Cf[okP])==0)
and all things considered, surely that would be an improvement?
More information about the R-help
mailing list