It seems that R (unlike S-plus) allows assignments to elements of a 
vector objects even when the object do not exists locally (inside a 
fucntion) in cases where an object of the same name exists globally.  I 
guess this is not really desired behaviour:


R v1.8.0
 > a
Error: Object "a" not found
 > testfunc <- function() {a[1]<-1; a}
 > testfunc()
Error in testfunc() : Object "a" not found
 > a<-2
 > testfunc()
[1] 1
 > a
[1] 2


S-plus v6.0
 > a
Problem: Object "a" not found
 > testfunc <- function() {a[1]<-1; a}
 > testfunc()
Problem in testfunc(): Object "a" not found
Use traceback() to see the call stack
 > a <- 2
 > testfunc()
Problem in testfunc(): object "a" must be assigned locally before 
replacement
Use traceback() to see the call stack

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-devel

Reply via email to