Literate Programming practices encourage good coding style and well-written integrated documentation that facilitate understanding by, presenting to, and educating of other fellow human beings, as opposed to program code sufficient just enough to run on a computer.
Tools
Understood in broader sense, Literate Programming can employ different tools, depending on particular goals, some are more specific to J and have been long used.
Literate Wiki Tool
Classic Literate Programming approach, similar to Knuth's WEB, adapted as a Wiki tool for J programming. Examples of such use include:
Vigenère Cipher, a convert/misc addon script
Pages using Literate style are marked with CategoryLiterate, see that category page for a list.
Labs
A J
Lab file combines a text description and executable J code in a single file. The Lab system lets you step through the file, displaying the text and executing the code.
Scriptdoc
Integrated comments for self-documenting code, supported by J Front End,
scriptdoc utility can be used to view the documentation.
Workbook
Workbook is a form of J session that allows combining documentation, executable code and results that can be edited and re-executed. Similar to Labs, but is viewable instantly and allows experimentation with any executable part. Proposed as session executed lines, Notebook or simple Window Display (ibid).
JAL Documentation
As described in Documentation section of Addons/Developers Guide, each addon has a Wiki documentation page, named with the same folder name, e.g. Addons/data/sqlite. See a list at Addons.
J Wiki
Many areas of J Wiki consist of good style well-documented pieces of code, such as Library and Guides.
See Also
Literate Programming book by Donald E. Knuth Major
articles about classic Literate Programming at
http://www.literateprogramming.com
Literate programming at Wikipedia
literate programming, Google
Comments are welcome, as well as updates to these wiki pages inline or in a page's Discussion section, or email specific issues or general comments to the general
forum.