# 260614 — Literate Programming (Knuth's WEB / weave / tangle) deep dive Date: 2026-06-14 · Source: **SHARD-WP-0004 T1** ## What this is A deep dive into **literate programming** — Knuth's WEB and the **`weave`/`tangle`** model — as the deepest ancestor of shard-wiki's **projection** and **transclusion** ideas applied to *executable* content. The keystone: **one canonical source → two co-derived projections** (typeset docs via `weave`, compilable code via `tangle`), plus **named code chunks** assembled by reference (transclusion). ## Why it matters - Establishes **one-source-many-projections** as a page-model + projection pattern that *generalizes* compile-to-static (UC-79, single output) to **N co-equal, semantically different** derived views — feeds SHARD-WP-0002 **T12/T16**. - Splits projection into **replication-projection** (lazy cache, current default) vs **derivation-projection** (transform/compile/weave/evaluate) — a distinction the rest of the computational batch (notebooks, REPLs) extends. - Named chunks are the **executable-content face of transclusion / compose-by-reference** (UC-32 / UC-44). ## Yield - **UC-83** (new): attach a single-source-multiple-projection (literate) artifact; present each derived view with output→source provenance; edits target the source. - Enrich **UC-32**, **UC-44**, **UC-79**; links **UC-54** (computed/evaluated projection, → T3 Jupyter). ## Contents | Path | Role | |------|------| | `findings.md` | WEB model, named-chunk transclusion, descendants (noweb/org-babel/knitr/Jupytext), capability profile, INTENT mapping, UC seed, architecture notes, open questions |