[Rd] RFC: deprecating some complexity in key methods package functions
Peter Haverty
haverty.peter at gene.com
Sat Aug 22 00:07:22 CEST 2015
Dear R community,
I have been working on speeding up a few parts of the methods package and
related environment/namespace functionality. I would like to get some
community input on a few proposed changes that are rather small, but do
involve deprecations. These changes would simplify and speed-up some
functions that are called with extreme frequency.
I have made a few suggestions in the following R bug tracker submissions:
https://bugs.r-project.org/bugzilla3/attachment.cgi?id=1896
https://bugs.r-project.org/bugzilla3/attachment.cgi?id=1897
In summary, the function 'is' can be called with a single argument, which
gives the same result as calling 'extends' directly. The second argument to
'is' can be one of two types (a class name or a class definition), but it
seems that only one of those options is ever used in methods or in base.
I'd like to deprecate using a classDef as the second argument as we can
now go quite fast without doing so.
.getGeneric has an unnecessary swap of as.double for as.numeric and also
what looks like it might be a bit of vestigial debug code ( a check for
package == "" and detailed stack trace). The subsequent C code also checks
for this situation, so I think we can omit the first check.
If anyone feels strongly about deprecating these code paths, please let
me know. As a community, we are very careful about backwards compatibility
so I want to be sure no one needs these things.
Regards,
Pete
____________________
Peter M. Haverty, Ph.D.
Genentech, Inc.
phaverty at gene.com
[[alternative HTML version deleted]]
More information about the R-devel
mailing list