Reproducible electronic documents offer standard commands to enable interaction with a document's results without learning any of the document's implementation details. Reproducible electronic documents invite readers to experience and exploit the author's work. The documents offer authors an automatic maintenance and quality control of their software. Creating reproducible electronic documents does add virtually no additional work to a research project that already uses the make utility to generate its results.
The GNU make rules that implement reproducible research have been very successful in organizing our laboratory's geophysical research. My fellow researchers use the rules daily. In the past three years, the laboratory has rigorously tested and published a dozen reproducible reports and theses: some on CD-ROM, some on the World Wide Web. Beyond the Stanford Exploration Project, Martin Karrenbach of Karlsruhe University and Bill Symes of Rice University adapted my set of GNU make rules for the needs of their research groups. David Donoho of Stanford's Statistics Department transfered the idea of reproducible research to his group's Matlab environment.
The dependency among files and the need to up-date them is of such fundamental organizational importance that I wish future operating systems and software libraries would directly incorporate these concepts. In particular, every file of an object-oriented system could offer two basic methods: a boolean query if the file is up-to-date and a command that instructs the file to up-date itself.