Weaving

By weaving we mean the process of crafting meaning out of story threads. In the context of literate programming we mean the bringing together of fragments of tangled literate code into an application that a user can meaningfully interact with.

# Repurpose

This interpretation does not resonate with me. So allow me some leeway while I explore how we could use this phrase: > When we weave we write in wiki. In particular we write `code` in wiki, __weaving__ it into the fabric of the page in such a way that it can be extracted and executed by a simple polyglot parser.

# Original meaning

The original meaning of __tangling__ as described by Donal Knuth for Literate Programming is: > __Weaving__ means to generate comprehensive document about program and its maintenance.

In a sense we preserve the meaning of this original definition with literate wiki. However in literate wiki there is no such thing as extracting documentation from source code - the wiki is the source code. This site is the source code.

In this context weaving means to extract a meaningful wiki out of fragments of various wiki's. It most likely implies creating an explicit interface, and tidying up the text and media that describes the application.

This weaving of a story from a tangled web of wiki fragments serves the same purpose as generating documentation, except that we also generate an application as well in the same step. This process of generating the application code and linked documentation in the form of a more standard application we can call Compiling - all though in the context of dynamic languages this term is less meaningful.

# See also