Dear developers, the implementation of S4 generics for existing S3 ones in the base package is concerned to be a threat to quick startup times [1]. But since S4 is promoted, and S3/S4 interoperability a pain when package developing [2], are there efforts to improve the situation? E.g. an S3 free system, etc. A good thing [2] is the package 'stats4', including some setGeneric calls (e.g. for summary, plot, ...) which I can 'importFrom' to a NAMESPACE. Nevertheless, functions as as.matrix, as. dist, merge, duplicated, and for sure some others, are not available as S4 generics. So my question is: will the base/graphics/... S3 generic definitions for S4 methods be completely implemented in a future R release? (E.g. in base4/stats4,/graphics4/... (by heritage [3]) or combined by a single package such as genericS4) Sorry I couldn't get more information from the devel archive (or find a solution/answer) since the same idea already has been mentioned in 2007 [4]. Thank you for clarifying in advance. Sincerely, Sven [1] http://r.789695.n4.nabble.com/An-update-method-for-lists-td912749.html#a912756 [2] my opinion [3] http://r.789695.n4.nabble.com/improved-error-message-when-existing-implicit-S4-generic-is-not-imported-td4421688.html#a4436278 [4] http://developer.r-project.org/BDR_S4issues.txt
On 06/07/2014, 6:23 AM, Sven E. Templer wrote:> Dear developers, > > the implementation of S4 generics for existing S3 ones in the base > package is concerned to be a threat to quick startup times [1]. But > since S4 is promoted, and S3/S4 interoperability a pain when package > developing [2], are there efforts to improve the situation? E.g. an S3 > free system, etc. > > A good thing [2] is the package 'stats4', including some setGeneric > calls (e.g. for summary, plot, ...) which I can 'importFrom' to a > NAMESPACE. Nevertheless, functions as as.matrix, as. dist, merge, > duplicated, and for sure some others, are not available as S4 > generics. > So my question is: will the base/graphics/... S3 generic definitions > for S4 methods be completely implemented in a future R release? > (E.g. in base4/stats4,/graphics4/... (by heritage [3]) or combined by > a single package such as genericS4)I would not do that, and I haven't seen anyone else announcing plans to do it, but the question is pretty open ended. I'm reluctant to make predictions about what R will look like in the indefinite future. I would be confident in guessing that R 3.2.x won't include it (but I could be wrong, if someone takes it on). If you want to make it happen sooner, you need to find an R Core member to work with. Presumably the responses to your posting will indicate the level of interest in working on this. Duncan Murdoch> Sorry I couldn't get more information from the devel archive (or find > a solution/answer) since the same idea already has been mentioned in > 2007 [4]. Thank you for clarifying in advance. > > Sincerely, > Sven > > [1] http://r.789695.n4.nabble.com/An-update-method-for-lists-td912749.html#a912756 > [2] my opinion > [3] http://r.789695.n4.nabble.com/improved-error-message-when-existing-implicit-S4-generic-is-not-imported-td4421688.html#a4436278 > [4] http://developer.r-project.org/BDR_S4issues.txt > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel >
You might be interested in the BiocGenerics package from Bioconductor. It defines a bunch of "base" generics, as well as some that are specific to Bioc needs. Being Bioc-oriented, it's not really meant to be a base4, but it comes reasonably close, and it could serve as a jumping off point for a base4, an expanded stats4, or whatever. Michael On Sun, Jul 6, 2014 at 3:23 AM, Sven E. Templer <sven.templer@gmail.com> wrote:> Dear developers, > > the implementation of S4 generics for existing S3 ones in the base > package is concerned to be a threat to quick startup times [1]. But > since S4 is promoted, and S3/S4 interoperability a pain when package > developing [2], are there efforts to improve the situation? E.g. an S3 > free system, etc. > > A good thing [2] is the package 'stats4', including some setGeneric > calls (e.g. for summary, plot, ...) which I can 'importFrom' to a > NAMESPACE. Nevertheless, functions as as.matrix, as. dist, merge, > duplicated, and for sure some others, are not available as S4 > generics. > So my question is: will the base/graphics/... S3 generic definitions > for S4 methods be completely implemented in a future R release? > (E.g. in base4/stats4,/graphics4/... (by heritage [3]) or combined by > a single package such as genericS4) > > Sorry I couldn't get more information from the devel archive (or find > a solution/answer) since the same idea already has been mentioned in > 2007 [4]. Thank you for clarifying in advance. > > Sincerely, > Sven > > [1] > http://r.789695.n4.nabble.com/An-update-method-for-lists-td912749.html#a912756 > [2] my opinion > [3] > http://r.789695.n4.nabble.com/improved-error-message-when-existing-implicit-S4-generic-is-not-imported-td4421688.html#a4436278 > [4] http://developer.r-project.org/BDR_S4issues.txt > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel >[[alternative HTML version deleted]]