This matrix is the active implementation checklist for The Algorithmic Beauty of Plants. It maps concepts rather than copying examples or prose. Page/figure assets from the book are deliberately excluded from the repository and package.
| Book section | Concept | Package module | Public API | Tests | Guide/example | Status and limitation |
|---|---|---|---|---|---|---|
| 1.1 | string/graph rewriting | core/grammar, core/graph-rewriting |
PlantCompiler, derive, rewriteEdges, rewriteNodes |
grammar, graph rewrite | L_SYSTEMS, custom-lsystem | Implemented; general finite graph replacement uses explicit ports |
| 1.2 | deterministic OL/DOL parallel derivation | core/grammar |
CompiledGrammar, derive |
parallel, empty/identity successors | L_SYSTEMS | Implemented with bounded buffered words |
| 1.3 | 2D turtle interpretation | turtle/interpreter |
interpret2D |
2D transforms, polygons | TURTLE_INTERPRETATION | Implemented |
| 1.4.1-1.4.3 | edge/node rewriting and relationships | core/graph-rewriting |
rewriteEdges, rewriteNodes |
Koch, Hilbert, port invariants | FRACTALS_AND_IFS | Implemented with named contact ports |
| 1.5 | stable 3D turtle frames | turtle/interpreter, math/vector |
interpret3D, Frame3 |
orthonormality, rotations | TURTLE_INTERPRETATION | Implemented; re-orthogonalizes after every rotation |
| 1.6 | axial trees and bracketed OL-systems | core/axial-tree, topology/branch-graph |
wordToAxialTree, BranchGraph |
stack, tree conversion | TREE_MODELING | Implemented; tree matching uses branch-aware word context |
| 1.7 | stochastic L-systems | core/grammar, math/random |
weighted productions, XorShift32 |
seeded choice, weights | stochastic-garden | Implemented |
| 1.8 | context-sensitive signal propagation | core/grammar |
left/right context, ignored symbols | signaling, branch context | custom-lsystem | Implemented for variable literal contexts and axial branch skipping |
| 1.9 | growth functions and incidence analysis | animation/growth, core/analysis |
growth functions, analyzeGrammar |
curve bounds, counts | ANIMATION | Implemented; matrix spectral analysis is diagnostic, not a symbolic algebra system |
| 1.10 | parametric L-systems | core/grammar, runtime/registry |
guards, successor callbacks, named operations | arity, guards, registries | custom-lsystem | Implemented with typed parameter values |
| 2 | tree models, tropism, pruning | botanical/trees, turtle/interpreter |
createTreeModel, SpatialConstraint |
Honda-style tree, tropism, pruning | TREE_MODELING, basic-tree | Implemented as reusable policies |
| 3.1 | partial/complete model levels and control | botanical/development |
DevelopmentPolicy, budgets |
resource/signal control | CONCEPTS | Implemented as module state plus policies |
| 3.2 | monopodial, sympodial, polypodial patterns | botanical/herbaceous |
branching policies | branching patterns | HERBACEOUS_AND_FLOWERS | Implemented |
| 3.3.1 | monopodial racemes | botanical/inflorescences |
createInflorescence |
open/closed raceme | raceme preset | Implemented |
| 3.3.2 | sympodial/cymose forms | botanical/inflorescences |
cymose specifications | dichasial/monochasial forms | flowering preset | Implemented |
| 3.3.3 | polypodial forms | botanical/inflorescences |
polypodial policy | iterative branch order | branching herb | Implemented where a finite generation budget is supplied |
| 3.3.4 | modified racemes, umbels, spikes, capitula | botanical/inflorescences |
inflorescence kinds | attachment placement | PRESETS | Implemented as topology arrangements |
| 4.1 | planar phyllotaxis | topology/phyllotaxis |
placePlanarPhyllotaxis |
golden angle, finite output | phyllotaxis example | Implemented with user radius functions |
| 4.2 | cylindrical phyllotaxis/parastichies | topology/phyllotaxis |
placeCylindricalPhyllotaxis, analyzeParastichies |
finite transforms, jitter | PHYLLOTAXIS | Implemented; collision relaxation is local and bounded |
| 5.1 | predefined surfaces | geometry/surfaces |
disk, blade, ribbon, frustum, petal | mesh invariants | ORGANS_AND_SURFACES | Implemented |
| 5.2 | developmental surfaces | geometry/surfaces, animation/growth |
sampleParametricSurface |
stable topology | animated-growth | Implemented for fixed sample grids; topology-changing cases are documented |
| 5.3 | compound leaves | botanical/organs |
createCompoundLeaf |
rachis/leaflets | compound-leaf | Implemented |
| 6.1 | timed DOL-systems | animation/timeline |
evaluateTimedWord, PlantTimeline |
partition independence, scrubbing | animated-growth | Implemented by absolute-time reevaluation |
| 6.2 | continuous growth functions | animation/growth |
built-in/keyframed/piecewise functions | curve endpoints | ANIMATION | Implemented |
| 7.1 | map L-systems, contact rewriting | topology/cellular |
CellMap, divideCell |
topology/adjacency | cellular-layer | Experimental but functional |
| 7.2 | graphical map interpretation | topology/cellular |
cellMapToMesh, wireframe |
valid face indices | CELLULAR_SYSTEMS | Experimental but functional |
| 7.3-7.4 | planar fern cellular development | topology/cellular |
deterministic subdivision policies | repeated subdivision | cellular-layer | General mechanism implemented; species-specific measured models are not copied |
| 7.5 | spherical cellular layers | topology/cellular |
createSphericalCellLayer |
sphere projection | cellular-layer | Experimental; geodesic projection rather than biological calibration |
| 7.6 | 3D cellular structures | topology/cellular |
createCellVolume |
adjacency/volume | cellular-layer | Experimental orthogonal-cell baseline |
| 8.1 | self-similarity and symmetry | topology/ifs |
transform hierarchy, box dimension | Sierpinski/dragon | FRACTALS_AND_IFS | Implemented |
| 8.2 | plant IFS and controlled IFS | topology/ifs |
weighted affine IFS, state-controlled sampling | seed/hash/bounds | botanical-architecture | Implemented; image rendering is consumer-owned |
| Appendix A | virtual laboratory, objects, prototypes, experiments | runtime/specification, registries, presets |
versioned specs, immutable extension | migration/round-trip | MODEL_SPECIFICATION, EXTENDING | Implemented as data specifications rather than a GUI laboratory |
| Appendix C | turtle symbol conventions | turtle/commands |
canonical command map | command coverage | TURTLE_INTERPRETATION | Implemented and customizable |
The bibliography, figure provenance appendix, and index were reviewed for
terminology and academic attribution; they do not define additional runtime
algorithms. See ACADEMIC_REFERENCES.md for citations.