[R] To improve my understanding of workspaces

Sean Davis sdavis2 at mail.nih.gov
Fri Mar 10 20:05:57 CET 2006

On 3/10/06 1:53 PM, "Kevin E. Thorpe" <kevin.thorpe at utoronto.ca> wrote:

> Sean Davis wrote:
>> On 3/10/06 8:33 AM, "Duncan Murdoch" <murdoch at stats.uwo.ca> wrote:
>>> Other than Emacs, I use the same work habits as Adai.  An advantage of
>>> this workflow is that almost everything is stored in text format, so it
>>> is easy to compare different versions to see what has changed, and it
>>> works very well with version control (I use Subversion).
>>> The only thing I'd add to his recommendation is that you be sure to save
>>> the scripts that produced the objects in the binary images (his
>>> "lala.rda"), so that they can be reconstructed if necessary.  As long as
>>> the reconstruction isn't too difficult, this means I don't need to
>>> bother to save them in Subversion.
> Version control sounds like a good idea Duncan, but I've always been a
> bit intimidated by it.  How cumbersome is Subversion and what are the
> advantages of version control?
>> I would add a bit of detail here that I do.  ESS/xemacs allows one to create
>> a transcript file that you can then step through, executing each command as
>> it was originally executed.  I make one of these transcript files for each
>> project and save it with the data and any scripts that I have for the
>> project.  So, in the end, I have a set of Rda files, one or more transcript
>> files, and a Src directory that contains any function code (and ESS supports
>> saving scripts to this directory automatically).
> Do you save your functions in Rda files to be loaded/attached or are
> they sourced every time?  How do you tell ESS/emacs to save in ./src or
> is that only possible with xemacs (I can use emacs to do what I need to
> but don't know lisp so the config files and terminology are a bit
> cryptic to me)?

I tend to save as source for easier reading and sharing among projects.  I
should begin to use SVN for my smaller projects, but I haven't yet--only for
packages meant for release or future release make it into SVN with me.  SVN
is quite easy to use and there is at least one emacs package that allows SVN
version control from within emacs (although I do it from the command-line,

As for your second question:

(setq ess-source-directory
      (lambda ()
        (concat ess-directory "Src/")))

is what I use.

More information about the R-help mailing list