x <- 0; names(x) <- "recursive"
I am saying more plainly: With 'x' above, deparse(x, control = "all") is wrong 
in R devel.

--------------------------------------------
On Sat, 16/12/17, Suharto Anggono Suharto Anggono <suharto_angg...@yahoo.com> 
wrote:

 Subject: Nice names in deparse
 To: r-devel@r-project.org
 Date: Saturday, 16 December, 2017, 11:09 PM

 Tags (argument names) in call to 'list'
 becomes names of the result. It is not necessarily so with
 call to 'c'. The default method of 'c' has 'recursive' and
 'use.names' arguments.

 In R devel r73778, with
 x <- 0; names(x) <- "recursive" 
 ,
 dput(x)
 or even
 dput(x, control = "all")
 gives
 c(recursive = 0)
 However, actual result of c(recursive =
 0) is NULL.

 Also with
 x <- 0; names(x) <- "recursive" 
 ,
 dput(x, control = c("keepNA",
 "keepInteger", "showAttributes"))
 in R devel r73778
 gives
 structure(c(0), .Names = "recursive")
 The 'control' is suggested by an
 example for output as in R < 3.5.0. However, the output
 is slightly different from
 dput(x)
 in R 3.3.2:
 structure(0, .Names = "recursive")


 Part of NEWS item related with
 "niceNames" control option:
 as.character(list( c (one = 1))) now
 includes the name, as as.character(list(list(one = 1))) has
 always done.

 Please reconsider.
 As
 as.numeric(list(c(one = 1)))
 gives
 1 ,
 I expect that
 as.character(list(c(one = "1")))
 gives
 "1" .
 It does in R devel r73778.
 Why does
 as.character(list(c(one = 1)))
 give
 "c(one = 1)" ?

 as.numeric(list(c(one = "1")))
 gives
 1 .

 list(list(one = 1))
 is not quite the same.
 as.numeric(list(list(one = 1)))
 gives
 NA .

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

Reply via email to