On 12/03/2010 06:54 AM, Berwin A Turlach wrote:
On Thu, 2 Dec 2010 23:34:02 -0500
David Winsemius<dwinsem...@comcast.net>  wrote:

[...] Erik is telling you that your use of ncol<-4 got evaluated to
4 and that the name of the resulting object was ignored, howevert the
value of the operation was passed on to matrix which used positional
matching since "=" was not used.

Sounds like a fair summary of what Erik said, but it is subtly wrong.
R has lazy evaluation of its arguments.  There is nothing that forces
the assignment to be evaluated and to pass the result into the
function.  On the contrary, the assignment takes place when the
function evaluates the argument.
Let's say: as no argument name was given, the positional matching applied. And evaluation took place when argument no. 2 was required.

Of course, you could give an argument name:
> matrix(ncol <- 4)
     [,1]
[1,]    4
> matrix(nrow = ncol <- 4)
     [,1]
[1,]   NA
[2,]   NA
[3,]   NA
[4,]   NA


Claudia


--
Claudia Beleites
Dipartimento dei Materiali e delle Risorse Naturali
Università degli Studi di Trieste
Via Alfonso Valerio 6/a
I-34127 Trieste

phone: +39 0 40 5 58-37 68
email: cbelei...@units.it

______________________________________________
R-help@r-project.org mailing list
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