[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 14:07:26 CEST 2020
Possibly just a symptom of the earlier behavior, but I'll amend my
example, below, with an even more disturbing observation:
Am Sat, 23 May 2020 13:19:24 +0200
schrieb Thomas Friedrichsmeier via R-devel <r-devel using r-project.org>:
[...]
> 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
ls()
# Error in ls() :
# Value of SET_STRING_ELT() must be a 'CHARSXP' not a 'NULL'
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/b67df0e4/attachment.sig>
More information about the R-devel
mailing list