[Rd] Wish list
ggrothendieck at gmail.com
Mon Jan 1 07:28:46 CET 2007
This is my 2007 New Year wishlist for R features:
1. Matrix Multiplication
Enhance matrix multiplication to work with multidimensional
arrays such that the last dimension of the first multiplicand
must equal the first dimension of the second. See:
- logical-valued function as first arg of grid.edit
- transparency under Windows (not sure if this involves grid
or just the Windows graphics device)
- shading patterns
- more interactivity features
- safe way to get name of a grid object, e.g.
names.vpPath <- names.viewport <- function(x) x$name
- safe way to get children of a grid object
getChildren.viewport <- function(x) x$children
and the order; see:
- facility for using a name, viewport or vpPath interchangably
so that, for example, any of them can be specified in
in print.trellis(..., draw.in=...) or draw.key(..., vp=...)
- make panel functions generic
- allow print.trellis args to be specified in xyplot, etc.
- shading patterns (once grid implements them)
- safe way to access lattice:::getStatus and lattice:::updateList
- allow name, viewport or vpPath to be specified in draw.in=
arg of print.trellis (and vp= arg of draw.key?)
- document parameters, i.e. those output from trellis.par.get()
- support for groups in histogram
4. Higher level Windows clipboard functions.
Since R 2.3.0 R can handle non-text objects
on the Windows clipboard. We now need some higher
level functionality that makes use of that
to read in non-text from the clipboard. For
example, one can select a table on an HTML
page in Internet Explorer and invoke copy
and it will copy it to the clipboard in a
non-text format. If one invokes paste in
Excel, Excel will automatically detect the
non-text format and copy it in the expected
way so that it appears in Excel one table
cell per Excel cell.
However, R does not currently
support this level of integration. (Current
workaround is to paste it into Excel and then copy
it back out of Excel. Excel will insert tabs between
text that is so copied.)
6. Allow attributes to be associated with an environment
variable without having them associated with the environment
itself. This would allow more powerful inheritance in
the case of subclasses of environment.
and subsequent postings in that thread. Any package
that uses the list(env = whatever) idiom to define
objects could make use of this.
7. documentation standards for packages
- NEWS/ChangeLog (also should be accessible from CRAN page for package
and should be included in built version of package)
8. Need to be able to distinguish between ordinary missing values
and structurally missing ones.
9. bidirectional pipes in Windows
10. Create a log updated at a regular frequency (daily or real time)
that tracks all changes on CRAN, e.g.
Date(GMT) Package Version Action
2006-09-20 21:22:01 mypkg 1.0.1 new
2006-09-20 22:00:23 mypkg2 0.2.1 updated
11. make integrate generic. Ryacas could use that.
12. Remove all R CMD dependencies on the find.exe command. find is a built
in command in Windows and having find.exe on my path causes
problems with other programs.
13. Make upper/lower case of simplify/SIMPLIFY consistent on all
apply commands and add a simplify= arg to by.
14. better reporting of location of errors and warnings in R CMD check.
15. tcl tile library (needs tcl 8.5 or to be compiled in with 8.4)
16. extend aggregate to allow vector valued functions:
aggregate(CO2[4:5], CO2[1:2], function(x) c(mean = mean(x), sd = sd(x)))
[summaryBy in doBy package and cast in reshape package can already
do similar things but this seems sufficiently fundamental that it
ought to be in the base of R]
17. All OSes should support input= arg of system.
My previous New Year wishlists are here:
More information about the R-devel