Reproducible Research, Literate Programming and Inter-Language Programming with Babel

Babel is about letting many different languages work together. Programming languages live in blocks inside natural language Org-mode documents. A piece of data may pass from a table to a Python code block, then maybe move on to an R code block, and finally end up embedded as a value in the middle of a paragraph or possibly pass through a gnuplot code block and end up as a plot embedded in the document.

My current approach is to use multiple languages, build scripts, intermediate files to share data, and finally weave it together inside of LaTeX. The babel way looks intriguing, with excellent support (via Emacs modes) for numerous languages. Very exciting.


This paper might pique your interest.