From J Wiki
Jump to navigation Jump to search

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.


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:

Pages using Literate style are marked with CategoryLiterate, see that category page for a list.


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.


The Joxygen addon builds html pages using Pandoc from comments in J scripts. Pandoc should be installed before running Joxygen.


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

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.