V The Literate Programs
Here we give descriptions and links to all the various pieces of the literate program family. They are all written in a literate fashion and the source code is freely available at their repositories, listed below.
All of this relies on node.js.
To understand these tools, the most interesting repositories are those for the underlying library, literate-programming-lib, and the event library, event-when.
litpro
This is our main tool. It is a command-line tool. It can be installed globally
or locally into a repository. Use npm install litpro -g to install it
globally.
literate-programming
This is the fat command-line client. It can do everything that litpro can do, but it also comes bundled with pug, markdown-it, postcss, tidy, minifiers. This is a “batteries loaded” tool for web development.
This can also be installed globally with npm install literate-programming
-g. The command is then literate-programming.
litpro-jshint
If you all you need is jshint, you might want to install the module litpro-jshint instead of the full one.
literate-programming-cli
This is an intermediate project between the library and litpro. This is where most of the command line client code is written.
literate-programming-cli-test
This is our test framework for the command line client. Basically, we have a directory with the files to process, a canonical directory showing what we expect to be in the build directory.
literate-progamming-lib
This is the place to read the literate program construction in detail. Start with project.md and migrate to the other files in the structure. Parsing and stitching are the two main algorithmic pages.
event-when
This is an event library that allows one to wait for multiple events with ease. We use it, for example, to assemble a variety of substitutions into a single code block. The return of that code block must wait for when the events of the other blocks being subbed in have fired.