>>>>> Morgan, Martin <martin.mor...@roswellpark.org> >>>>> on Fri, 4 Mar 2016 12:36:25 +0000 writes:
> I see as below, where getGeneric and getMethod imply a different signature; the signature is mode="any" for both cases in R version 3.2.3 Patched (2016-01-28 r70038)I don't know how to reproduce Jeff's error, though. >> library(Matrix) >> as.vector > function (x, mode = "any") > .Internal(as.vector(x, mode)) > <bytecode: 0xe79f88> > <environment: namespace:base> so note, that even though Matrix is loaded, as.vector did not have to change to a standardGeneric(.). "The" reason is list among the NEWS for R-devel : o S4 dispatch works within calls to .Internal(). This means explicit S4 generics are no longer needed for unlist and as.vector. so this change was very much on purpose and has had the goal to keep as.vector() "as fast as possible". *BUT* indeed, the "signature mismatch" you observe has been an bogous side effect of the change, and it may even be the reason why versions of Matrix built in different versions of R (3.2.x vs 3.3.x) are problematic. I'll commit a fix for this buglet {which also affects 'unlist' !} in a moment. So after all, I'm very glad for this thread! Martin >> getGeneric("as.vector") > standardGeneric for "as.vector" defined from package "base" > function (x, mode) > standardGeneric("as.vector") > <bytecode: 0x29a6bd0> > <environment: 0x299f988> > Methods may be defined for arguments: x > Use showMethods("as.vector") for currently available ones. >> selectMethod("as.vector", "ANY") > Method Definition (Class "internalDispatchMethod"): > function (x, mode) > .Internal(as.vector(x, mode)) > <environment: base> > Signatures: > x > target "ANY" > defined "ANY" >> sessionInfo() > R Under development (unstable) (2016-02-27 r70232) > Platform: x86_64-pc-linux-gnu (64-bit) > Running under: Ubuntu 14.04.4 LTS > locale: > [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C > [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 > [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 > [7] LC_PAPER=en_US.UTF-8 LC_NAME=C > [9] LC_ADDRESS=C LC_TELEPHONE=C > [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C > attached base packages: > [1] stats graphics grDevices utils datasets methods base > other attached packages: > [1] Matrix_1.2-4 > loaded via a namespace (and not attached): > [1] grid_3.3.0 lattice_0.20-33 ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel