On Feb 20, 2006, at 8:29 AM, Prof Brian Ripley wrote: > On Mon, 20 Feb 2006, Duncan Murdoch wrote: > >> On 2/20/2006 8:54 AM, [EMAIL PROTECTED] wrote: >>> Full_Name: David Pleydell >>> Version: 2.2.1 >>> OS: Debian Etch >>> Submission from: (NULL) (193.55.70.206) >>> >>> >>> There appears to be a conflict between the chol functions from >>> the Matrix and >>> the SparseM packages. chol() can only be applied to a matrix of >>> class dspMatrix >>> if SparseM is not in the path. >> >> This isn't a bug, it's simply that both Matrix and SparseM define a >> generic for chol (though Matrix actually gets it by converting the >> function in base). > > The problem appears to be that SparseM first redefines chol as an > S3 generic and then defines S4 methods on it. As no new S3 methods > are then defined the S3 step would seem unnecessary, but it is used > to allow the package to define S4 methods on a different signature > from R's chol(). > (That seems to me to be asking for trouble.) > > Only the package maintainer of SparseM can do anything about this.
I'm happy to modify this, but would welcome advice. The current snafu is a consequence of writing a first version of SparseM with S3 methods and then converting (evidently incompletely) to S4. > > Beyond, that I guess it is a consequence of namespaces that Matrix > defines methods via a derived generic on base::chol and not on the > generic chol in SparseM. That needs further thought by someone > (JMC?) who understands the S4 internals. > >> If you want access to the version in Matrix after attaching SparseM >> ahead of it in the search path, use Matrix::chol. > > But the whole point of generic functions is to allow one to write > generic code. > > -- > Brian D. Ripley, [EMAIL PROTECTED] > Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ > University of Oxford, Tel: +44 1865 272861 (self) > 1 South Parks Road, +44 1865 272866 (PA) > Oxford OX1 3TG, UK Fax: +44 1865 272595 ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel