That might be worth thinking about generally, but it would still be nice to have the base generics pre-defined, so that people are not copy and pasting the definitions everywhere, hoping that they stay consistent.
On Wed, Mar 26, 2014 at 6:13 AM, Gabriel Becker <gmbec...@ucdavis.edu>wrote: > Perhaps a patch to R such that generics don't clobber each-other's method > tables if the signatures agree? I haven't dug deeply, but simply merging > the method tables seems like it would be safe when there are no conflicts. > > That way this type of multiplicity would not be a problem, though it > wouldn't help (as it shouldn't) if the two generics didn't agree on > signature or both carried methods for the same class signature. > > ~G > > > On Wed, Mar 26, 2014 at 4:38 AM, Michael Lawrence < > lawrence.mich...@gene.com> wrote: > >> The BiocGenerics package was designed to solve this issue within >> Bioconductor. It wouldn't be the worst thing in the world to depend on the >> simple BiocGenerics package for now, but ideally the base generics would >> be >> defined higher up, perhaps in the methods package itself. Maybe someone >> else has a more creative solution, but any sort of conditional/dynamic >> approach would probably be too problematic in comparison. >> >> Michael >> >> >> >> On Wed, Mar 26, 2014 at 4:26 AM, Ulrich Bodenhofer < >> bodenho...@bioinf.jku.at >> > wrote: >> >> > [cross-posted to R-devel and bioc-devel] >> > >> > Hi, >> > >> > I am trying to implement a 'sort' method in one of the CRAN packages I >> am >> > maintaining ('apcluster'). I started with using setMethod("sort", ...) >> in >> > my package, which worked fine. Since many users of my package are from >> the >> > bioinformatics field, I want to ensure that my package works smoothly >> with >> > Bioconductor. The problem is that the BiocGenerics package also >> redefines >> > 'sort' as an S4 generic. If I load BiocGenerics before my package, >> > everything is fine. If I load BiocGeneric after I have loaded my >> package, >> > my setMethod("sort", ...) is overridden by BiocGenerics and does not >> work >> > anymore. A simple solution would be to import BiocGenerics in my >> package, >> > but I do not want this, since many of this package's users are outside >> the >> > bioinformatics domain. Moreover, I am reluctant to include a dependency >> to >> > a Bioconductor package in a CRAN package. I thought that maybe I could >> > protect my setMethod("sort", ...) from being overridden by BiocGeneric >> by >> > sealed=TRUE, but that did not work either. Any ideas are gratefully >> > appreciated! >> > >> > Thanks a lot, >> > Ulrich >> > >> > >> > ------------------------------------------------------------------------ >> > *Dr. Ulrich Bodenhofer* >> > Associate Professor >> > Institute of Bioinformatics >> > >> > *Johannes Kepler University* >> > Altenberger Str. 69 >> > 4040 Linz, Austria >> > >> > Tel. +43 732 2468 4526 >> > Fax +43 732 2468 4539 >> > bodenho...@bioinf.jku.at <mailto:bodenho...@bioinf.jku.at> >> > http://www.bioinf.jku.at/ <http://www.bioinf.jku.at> >> > >> > ______________________________________________ >> > R-devel@r-project.org mailing list >> > https://stat.ethz.ch/mailman/listinfo/r-devel >> > >> >> [[alternative HTML version deleted]] >> >> >> ______________________________________________ >> R-devel@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-devel >> > > > > -- > Gabriel Becker > Graduate Student > Statistics Department > University of California, Davis > [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel