[Rd] Does anyone use Sweave (RweaveLatex) option "expand=FALSE"?

Kevin Coombes kevin.r.coombes at gmail.com
Thu Aug 19 23:07:50 CEST 2010


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.

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



More information about the R-devel mailing list