R Developer Page
This site is intended as an intermediate repository for more or
less finalized ideas and plans for the R statistical system. Most
parts of the site are open to the public, and we welcome discussions
on the ideas, but please do not take them for more than that, in
particular there is no commitment to actually carry out the plans in
finite time unless expressedly stated.
For general information about R see the R Project's homepage.
This page (and most of its links) are updated daily and so may not
be absolutely current. The up-to-the-minute version can be seen at
https://svn.r-project.org/R-dev-web/trunk/index.html.
Release plans
The latest release of R was 2.2.1 on December 20, 2005. The next
release has not been scheduled yet.
The general schedule is to have major releases (x.y.0) biannually,
occurring close to April 1 and October 1. Patch releases happen on an
as-needed basis.
[Things to do better at 2.3.0: Release off of a branch (make branch at
feature freeze), switch from "beta" to "release candidate" at code
freeze.]
Pointers
Older Material
Material in this section is at least 6 months' old, and may or may not
still be relevant. In particular, some of the proposals here have
been implemented in slightly different ways, or since been extended.
-
Subversion/CVS logs for
2005,
2004 and
2003
- Updating packages for changes in R
-
Notes on Encodings and R,
including the current implementation planned for 2.1.0.
-
Open bugs in the repository (original
correspondence truncated to 500 lines per message). No longer updated.
- CVS tips
-
RFCs and writeups
-
RFC on Sparse matrices in R
-
An embeddable R library
-
Some early notes on name
spaces, and the name
space implementation for R 1.7 (also available
in pdf format).
-
Some notes on references,
external objects, or mutable state for R and a simple
implementation of external references and finalization added
to 1.2. A simple regular
expression package provides an example of using this facility.
-
An outline of a preliminary weak reference mechanism is available.
Details are likely to change after more experience is gained with
this in some internal uses.
-
Some notes on the generational
collector and its write
barrier
-
Some very preliminary notes on byte code
compilation for R
-
Luke's notes on
threading, GUI, and asynchronous IO issues. Some of the
reference links are messed up; the full references are in the BibTeX
file. Duncan also has a set of
notes on threading.
- A simple
alternate experimental implementation of tcltk as a proof of
concept for an approach that uses a separate GUI server process
with inter-process message passing (which may be easier to get to
work acorss UNIX/Windows/MacOS).
- A
preliminary experimental implementation of exception handling
for R. Also a simple
mechanism for managing dynamic state.
- Some notes on possible enhancements to
the package installation procedure.
-
A description
of a new way of resolving C and Fortran routines
in
.C
, .Call
and .Fortran
calls.
-
Notes
and example package
of the new, extensible mechanism for converting arguments in
.C()
calls.
- Developers notes on the
methods and classes
package. Related pages discuss compatibility issues for formal vs
old-style classes and methods, and other questions of strategy for
future work, including areas where we are
beginning to extend the API in Programming with Data.
-
Notes
on some recent changes to functions
get
,
assign
, and their relatives, to allow consistent use
of environments and other cleanups.
-
Dataeditor restructuring ideas (outdated)
-
Thoughts on embedding Tk in R (outdated)
-
Notes on the
=
operator in assignments.
-
Some notes on a new save/load format and a serialization
mechanism for R.
-
An RFC on
changes to R base graphics and the graphics device drivers.
-
Notes and Examples
on callbacks that are invoked at the end of each
successfully completed top-level expression.
-
A document-in-progress describing the
changes to the graphics system
from 1.3.1 to 1.4.0
-
A proposal for
changing the specification of fonts in R and
another one extending the discussion to
line end/joins
and alpha transparency specifications in R.
-
A
list of R devices, including device maintainers and pointers to
where the code resides.
-
A package that provides a
null graphics device; includes a vignette, "devNull", that
documents how to create a new graphics device as an add on package.
- Description of the nonstandard
evaluation rules in R 1.5.1 and some
suggestions. (updated). Also an R
function and docn for making model
frames from multiple formulas.
- Notes on model-fitting
functions in R, and especially on how to enable all the safety
features.
- the Ideas List
-
Information on the Aqua GUI for the Darwin port of R (code name RAqua) is
available
here.
-
R and databases area
Material mainly for the core team
The core team can access the source files for this site by
svn checkout https://svn.r-project.org/R-dev-web/trunk R-dev-web
Any commit to this area will be reflected in the web pages at the next
(daily) update. The current version can be seen at
https://svn.r-project.org/R-dev-web/trunk/index.html.