Literate programming


Knuth had privately used a literate programming system called DOC as early as 1979.


It is now being developed by Tim Daly, one of the developers of scratchpad, Axiom is totally written as a literate program. == Literate programming practices == The first published literate programming environment was WEB, introduced by Knuth in 1981 for his TeX typesetting system; it uses Pascal as its underlying programming language and TeX for typesetting of the documentation.


While the first generation of literate programming tools were computer language-specific, the later ones are language-agnostic and exist above the programming languages. == History and philosophy == Literate programming was first introduced by Knuth in 1984.


However, because these tools do not implement the "web of abstract concepts" hiding behind the system of natural-language macros, or provide an ability to change the order of the source code from a machine-imposed sequence to one convenient to the human mind, they cannot properly be called literate programming tools in the sense intended by Knuth. === Critique === In 1986, Jon Bentley asked Knuth to demonstrate the concept of literate programming by writing a program in WEB.


The practice of literate programming has seen an important resurgence in the 2010s with the use of notebooks, especially in data science. == Concept == Literate programming is writing out the program logic in a human language with included (separated by a primitive markup) code snippets and macros.

All text is taken from Wikipedia. Text is available under the Creative Commons Attribution-ShareAlike License .

Page generated on 2021-08-05