Literate programming is the literary art (established by _(Donald E. Knuth)) of writing programs in a style
designed for human understanding.  It combines the documentation for the
program in the same file as the code, but allows the code to be presented
in pieces, in the order that they are explained to the reader.  A literate
programming system is used to take the combined source+documentation and
produce either:
<ul>
<li>Code minus the prose documentation (Tangling)
<li>Code with prose documentation converted to comments (Untangling)
<li>Formatted documentation with inline code (Weaving)
</ul>

<ul class="links">
  <li>_("LiterateProgramming.com"|http://www.literateprogramming.com/).
</ul>

<ul class="implementations">
  <li>_("Inverse Literate Programming"|http://lki-www.informatik.uni-hamburg.de/~kirschke/invlit.html):
    <blockquote>
    <strong>A package for Inverse Literate Programming</strong>
    <br>The package <em>lisp-doc</em> can be used for generating semi-automated documentation from _(LISP) source code.
    <br>[..]
    <br>
    <strong>Source code</strong>
    <br>The package lisp-doc is written for Harlequin LispWorks _(Common Lisp); with minor changes it should run on other _(LISP) systems too.
    <br>[..]
    </blockquote>
  </li>
</ul>
