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.

Highlights

  • There are a variety of settings in which it is desirable to mix prose, code, data, and computational results in a single document.ˆ Scientific research increasingly involves the use of computational tools

  • Code intended for execution is tangled and the resulting source code files are sent to a compiler or interpreter

  • :results value Specifies that the code block should be treated as a function, and the results should be equal to the value of the last expression in the block, like the return value of a function

Read more

Summary

Introduction

There are a variety of settings in which it is desirable to mix prose, code, data, and computational results in a single document.ˆ Scientific research increasingly involves the use of computational tools. The literate programming tool provides methods to create two types of view into the document; articles of typeset prose with marked-up code blocks intended for human consumption, and computer-readable documents of pure source code. The original literate programming tool, developed by Knuth, was WEB, which consists of two primary programs, TANGLE and WEAVE (Knuth 1984) This system supported the Pascal programming language and produced documents typeset with TEX. Documents produced by noweave can be typeset with TEX, LATEX, and troff or displayed in a web browser as HTML Software tools such as WEB, cweb, and noweb enable the authoring of both prose and code, but do not provide facilities for the execution of code from within documents. Code intended for execution is tangled and the resulting source code files are sent to a compiler or interpreter

Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call