On Sun, Feb 22, 2009 at 10:34 PM, Berwin A Turlach
<ber...@maths.uwa.edu.au> wrote:
> G'day Stavros,

Hello, Berwin,

> On Sun, 22 Feb 2009 16:50:13 -0500
> Stavros Macrakis <macra...@alum.mit.edu> wrote:

>> ...sort(list(...))), I'd hope that wouldn't break existing code. [...]

> ...sort is a generic function, and for sort(list(...)) to work, it would
> have to dispatch to a function called sort.list;... such a function exists
> already and it is not for sorting list.

Omigod.  There is a function called 'sort' which doesn't sort, and
which follows the S3 conventions for sorting lists, but doesn't allow
lists as an argument type.  That *is* a mess!

Well, if it's OK for sort.list to violate S3 naming conventions
(presumably because it was defined before S3 was), then I suppose it
would be OK for sort to violate S3 coding conventions in return, and
dispatch in a non-standard way, e.g.

      if (is.list(x)) sort.S3.list(...) else UseMethod("sort")

Ugly, but then so is sort.list....

           -s

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

Reply via email to