[Rd] [R] Semantics of sequences in R
Berwin A Turlach
berwin at maths.uwa.edu.au
Mon Feb 23 04:34:22 CET 2009
G'day Stavros,
On Sun, 22 Feb 2009 16:50:13 -0500
Stavros Macrakis <macrakis at alum.mit.edu> wrote:
> On Sun, Feb 22, 2009 at 4:12 PM, Duncan Murdoch
> <murdoch at stats.uwo.ca> wrote:
[....]
> > Which ones in particular should change? What should they change
> > to? What will break when you do that?
>
> In many cases, the orthogonal design is pretty straightforward. And
> in the cases where the operation is currently an error (e.g.
> sort(list(...))), I'd hope that wouldn't break existing code. [...]
This could actually be an example that would break a lot of existing
code.
sort is a generic function, and for sort(list(...)) to work, it would
have to dispatch to a function called sort.list; and as Patrick Burns'
"The R Inferno" points out, such a function exists already and it is not
for sorting list.
In fact, currently you get:
R> cc <- list(a=runif(4), b=rnorm(6))
R> sort(cc)
Error in sort.list(cc) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?
Thus, to make sort(list()) work, you would have to rename the existing
sort.list and then change every call to that function to the new name.
I guess this might break quite a few packages on CRAN.
Cheers,
Berwin
=========================== Full address =============================
Berwin A Turlach Tel.: +65 6516 4416 (secr)
Dept of Statistics and Applied Probability +65 6516 6650 (self)
Faculty of Science FAX : +65 6872 3919
National University of Singapore
6 Science Drive 2, Blk S16, Level 7 e-mail: statba at nus.edu.sg
Singapore 117546 http://www.stat.nus.edu.sg/~statba
More information about the R-devel
mailing list