On Thu, Jun 17, 2010 at 9:23 AM, Hadley Wickham <hadley@rice.edu> wrote:

> > The creation of a research compendium can be viewed as
> > a form of unit testing, and the fact that R has powerful tools
> > that support this process (Sweave) could be viewed as one of
> > its outstanding features (relating these comments back to
> > the topic of this thread).
>
> If anything, a research compendium would be an integration test, not a
> compendium.  And many programming languages have something similar to
> sweave.
>
>
Yes, but I think this is where "R CMD check" shines (and also shows its
limitations). Many languages include optional or advisory features, like
adding
documentation to source code! But R CMD check gently nudges packages
developers to actually add documentation for every R function, and the
documentation format is well-defined, etc. Unfortunately, it says nothing
about modules written in other languages.

On your comment about integration testing, I use vignettes to keep track of
the mathematics of models that I build, along with quick tests of these
models,
somewhat like a Mathematica notebook. This can be viewed as a form of
"literate unit testing."

	[[alternative HTML version deleted]]

