Paper on org-mode and reproducible research

As I was talking recently about reproducible research, I have to post this.

A new paper by Eric Schulte, Dan Davison, Thomas Dye, Carsten Dominik. If you haven’t heard about them, you haven’t been on the org-mode mailing list. They could be called the main contributors to org-mode and the part of org-mode called babel, without taking credit away from the  numerous other contributors.

The paper is called

A Multi-Language Computing Environment for Literate Programming and Reproducible Research

and you can find it at http://www.jstatsoft.org/v46/i03 and it is open access.

here is the abstract:

We present a new computing environment for authoring mixed natural and computer language documents. In this environment a single hierarchically-organized plain text source file may contain a variety of elements such as code in arbitrary programming languages, raw data, links to external resources, project management data, working notes, and text for publication. Code fragments may be executed in situ with graphical, numerical and textual output captured or linked in the file. Export to LATEX, HTML, LATEX beamer, DocBook and other formats permits working reports, presentations and manuscripts for publication to be generated from the file. In addition, functioning pure code files can be automatically extracted from the file. This environment is implemented as an extension to the Emacs text editor and provides a rich set of features for authoring both prose and code, as well as sophisticated project management capabilities.

Definitely worth reading, even though R only plays a small role in it, but the principles are important.

 

Cheers and enjoy life.

Debugging with

I just found these two gems about debugging in R on r-help today (here is the thread):

1) posted by Thomas Lumley:

traceback() gets you a stack trace at the last error

options(warn=2) makes warnings into errors

options(error=recover) starts the post-mortem debugger at any error,
allowing you to inspect the stack interactively.

2) added by  William Dunlap:

options(warning.expression=quote(recover()))
will start that same debugger at each warning.

I think these are very useful ideas to remember – thanks.

Cheers, and enjoy life.