[Rd] match gets confused by S4 objects
Martin Maechler
maechler at stat.math.ethz.ch
Tue Feb 7 17:49:38 CET 2006
>>>>> "Seth" == Seth Falcon <sfalcon at fhcrc.org>
>>>>> on Tue, 07 Feb 2006 07:20:17 -0800 writes:
Seth> On 7 Feb 2006, maechler at stat.math.ethz.ch wrote:
>> The solution has been agreed to be changing the internal
>> representation of S4 objects making them a new SEXP (basic R
>> "type"); and as Brian alludes to, the problem is that those in
>> R-core that want to and are able to do this didn't have the time
>> for that till now.
Seth> The explanations from you are Brian are helpful, thanks. I was aware
Seth> that the issue is the internal representation of S4 objects and was
Seth> hoping there might be a cheap work around until a new SEXP comes
Seth> around.
Seth> It seems that S4 instances are less trivial to detect than one might
Seth> expect before actually trying it.
Seth> I suppose one work around is to have an S4Basic class that defines
Seth> methods for match(), c(), etc and raises an error. Then extending
Seth> this class gives you some protection.
well; not so easy for c() !! {see the hoops we had to jump through to do
this for cbind() / rbind() (used in 'Matrix')}.
But it might be interesting; particularly since some have said
they'd expect a considerable performance penalty when all these basic
functions would become S4 generics...
Martin
More information about the R-devel
mailing list