On Sat, May 31, 2014 at 6:54 PM, Yihui Xie <xie@yihui.name> wrote:

I agree that fully evaluating the code is valuable, but
> it is not a problem since the weave functions do fully evaluate the
> code. If there is a reason for why source() an R script is preferred,
>
I guess it is users' familiarity with .R instead of .Rnw/.Rmd/...,
>

It's because .Rnw and Rmd require more from the user than .R. Also, this
started with vignettes but you seem to be talking more generally. If so, I
would point out that not all R code is intended to generate reports, and
writing pure R code that isn't going to generate a report in an .Rnw/.Rmd
file would be very strange to say the least.



> however, I guess it would be painful to read the pure R script tangled
> from the source document without the original narratives.
>

That depends a lot on what you want. Reading an woven article/report that
includes code and reading code are different and equally valid activities.
Sometimes I really just want to know what the author actually told the
computer to do.


>
> So what do we really lose if we turn off tangle? We lose an R script
> as a derivative from the source document, but we do not lose the code
> evaluation.
>

We lose *isolated* code evaluation. Sweave/knit have a lot more moving
pieces than source/eval do. Many of which are  for the purpose of
displaying output, rather than running code.


>
> Regards,
> Yihui
> --
> Yihui Xie <xieyihui@gmail.com>
> Web: http://yihui.name
>
>
> On Sat, May 31, 2014 at 6:20 PM, Martin Morgan <mtmorgan@fhcrc.org> wrote:
> > On 05/31/2014 03:52 PM, Yihui Xie wrote:
> >>
> >> Note the test has been done once in weave, since R CMD check will try
> >> to rebuild vignettes. The problem is whether the related tools in R
> >> should change their tangle utilities so we can **repeat** the test,
> >> and it seems the answer is "no" in my eyes.
> >>
> >> Regards,
> >> Yihui
> >> --
> >> Yihui Xie <xieyihui@gmail.com>
> >> Web: http://yihui.name
> >>
> >>
> >> On Sat, May 31, 2014 at 4:54 PM, Gabriel Becker <gmbecker@ucdavis.edu>
> >> wrote:
> >>>
> >>>
> >>>
> >>>
> >>> On Fri, May 30, 2014 at 9:22 PM, Yihui Xie <xie@yihui.name> wrote:
> >>>>
> >>>>
> >>>> Hi Kevin,
> >>>>
> >>>>
> >>>> I tend to adopt Henrik's idea, i.e., to provide vignette
> >>>> engines that just ignore tangle. At the moment, it seems R CMD check
> >
> >
> > It is very useful, pedagogically and when reproducing analyses, to be
> able
> > to source() the tangled .R code into an R session, analogous to running
> > example code with example(). The documentation for ?Stangle does read
> >
> >      (Code inside '\Sexpr{}' statements is ignored by 'Stangle'.)
> >
> > So my 'vote' (recognizing that I don't have one of those) is to
> incorporate
> > \Sexpr{} expressions into the tangled code, or to continue to flag use of
> > Sexpr with side effects as errors (indirectly, by source()ing the tangled
> > code), rather than writing engines that ignore tangle.
> >
> > It is very valuable to all parties to write a vignette with code that is
> > fully evaluated; otherwise, it is too easy for bit rot to seep in, or to
> > 'fake' it in a way that seems innocent but is misleading.
> >
> > Martin Morgan
>



-- 
Gabriel Becker
Graduate Student
Statistics Department
University of California, Davis

	[[alternative HTML version deleted]]

