Literate programming is an approach to programming introduced by Donald Knuth in which a program is given as an explanation of the program logic in a natural language, such as English, interspersed with snippets of macros and traditional source code, from which a compilable source code can be generated - wikipedia ![]()
The literate programming paradigm represents a move away from writing programs in the manner and order imposed by the computer, and instead enables programmers to develop programs in the order demanded by the logic and flow of their thoughts.
Literate programs are written as an uninterrupted exposition of logic in an ordinary human language, much like the text of an essay, in which macros are included to hide abstractions and traditional source code.
Literate programming tools are used to obtain two representations from a literate source file: one suitable for further compilation or execution by a computer, the "tangled" code, and another for viewing as formatted documentation, which is said to be "woven" from the literate source. While the first generation of literate programming tools were computer language-specific, the later ones are language-agnostic and exist above the programming languages.
The basic idea behind Literate Wiki is for a wiki page to describe and document a software program as well as to extract the code that is described.
The tangled-web is the combination of several ideas into a single unified way of authoring which includes code and annotation (text, video, audio etc) in a single environment.
The basic idea behind Literate Wiki is for a wiki page to describe and document a software program as well as to extract the code that is described.
The tangled-plugin is a plugin that help weave the tangled web. It is an authoring tool for Federation REST Services.
Expanding the Role of Tools in a Literate Programming Environment. Kent Beck, Ward Cunningham. Tektronix.
HyperPerl is both a program representation, a language, and a translator that prepares programs to be executed. The programs are literate, in that they are embedded within a narrative about their purpose and operation. HyperPerl programs are hosted by wiki and translated from markup to straight script by hp.cgi. wikibase ![]()