[Rd] Surpising behavior when using an active binding as loop index in R 4.0.0
Thomas Friedrichsmeier
thom@@@|r|edr|ch@me|er @end|ng |rom ruhr-un|-bochum@de
Sat May 23 13:19:24 CEST 2020
Hi,
I stumbled upon a surprising behavior when using an active binding as a
loop index variable in R 4.0.0. In contrast, the behavior observed in R
3.6.1 is in line with my expectations.
Consider the code below:
makeActiveBinding("i",
function(value) {
if (missing(value)) {
x
} else {
print("set")
x <<- value
}
}, globalenv())
i <- 1 # output "set"
print(i) # output [1] 1
# Surprising behavior starts here:
for(i in 2:3) print(i) # output [1] "set"
# NULL
# NULL
print(i) # output NULL
print(x) # output NULL
i <- 4 # output "set"
print(i) # ouput [1] 4
print(x) # ouput [1] 4
Regards
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: Digitale Signatur von OpenPGP
URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20200523/8f3f891d/attachment.sig>
More information about the R-devel
mailing list