Hi,

I came across a case where I cannot access a list element by its empty name.
Minimal example can be constructed as

    x=list("A", 1)
    names(x)=c("a", "")
    x[["a"]]
    #[1]  "A"
    x[[""]]
    #NULL
    x$`a`
    #[1]  "A"
    x$``
    # Error: attempt to use zero-length variable name
    # but we can still access the second element by its index
    x[[2]]
    #[1] 1

To my mind, it should be perfectly legal to access an element by an empty name as we can have for example
    match("", names(x))
    #[1] 2
Hence a traditional question: is it a bug or feature?

Best,
Serguei.


> sessionInfo()
R version 3.5.0 (2018-04-23)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Mageia 6

Matrix products: default
BLAS/LAPACK: /home/opt/OpenBLAS/lib/libopenblas_sandybridge-r0.3.0.dev.so

locale:
[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods base

loaded via a namespace (and not attached):
[1] compiler_3.5.0

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to