Does anyone use Sweave (RweaveLatex) option "expand=FALSE"?
On Thu, 2010-08-19 at 17:07 -0400, Kevin Coombes wrote:
I use it, frequently. The idea for it goes back to some of Knuth's
original literate programming ideas for developing weave and tangle when
he was writing TeX (the program). I want to be able to document the
pieces of some complex algorithm without having to see all of the gory
details. For instance, I have code that looks like the following.
(Note that this is typed on the fly rather than copied from actual
source, so there may be typos.)
<<mainloop,keep.source=TRUE,expand=FALSE>>=
for (i in 1:nSamples) {
<<getInfoAboutThisSample>>
for (j in 1:nChromosomes) {
<<getChromosomeDataForCurrentSample>>
<<normalizeChromosomeData>>
<<findSegments>>
<<computeSignificance>>
<<writeResults>>
}
}
@
Each of the <<chunks>> is itself a fairly long piece of code defined and
documented somewhere else. (Some of them may themselves be written in
the same form to reduce the final size of a chunk to something a human
has a chance of understanding. That's the difference between weave and
tangle in the original implementation.) By blocking expansion, I can
focus on the main steps without having them lost in pages and pages of code.
Couldn't you achieve the same amount of abstraction using function calls, rather than embedded code chunks? The reader can then see real code, rather than non-code, or meta-code, or whatever. Alternatively, represent the code chunks as R expressions, then evaluate the expressions at the appropriate points. -Matt
So I vote strongly for retaining "expand=FALSE".
Best,
Kevin
Duncan Murdoch wrote:
On 19/08/2010 4:29 PM, Claudia Beleites wrote:
I never used it. I got curious, though. What would be a situation that benefits of this option?
When I put it in, I thought it would be for people who were writing about Sweave. Duncan Murdoch
Maybe a use case could be found by "brute force" (grep all .Rnw files on CRAN for the option? Claudia
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
Matthew S. Shotwell Graduate Student Division of Biostatistics and Epidemiology Medical University of South Carolina