diff options
| author | Cliff Click <cliffc@acm.org> | 2026-10-03 09:29:42 -0700 |
|---|---|---|
| committer | Cliff Click <cliffc@acm.org> | 2026-10-03 09:29:42 -0700 |
| commit | c3958e34c0de21df52e57e47e4f47ffe6464f138 (patch) | |
| tree | aa9ae69508ed9e6b9a73237922edbe13442a5238 /chapter07/docs/07-graph1.svg | |
| parent | 41ae6269689e2b3cde9f7ac4227923d4085dceda (diff) | |
| download | Simple-c3958e34c0de21df52e57e47e4f47ffe6464f138.tar.gz Simple-c3958e34c0de21df52e57e47e4f47ffe6464f138.zip | |
Graph updates; readme updates
Diffstat (limited to 'chapter07/docs/07-graph1.svg')
| -rw-r--r-- | chapter07/docs/07-graph1.svg | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/chapter07/docs/07-graph1.svg b/chapter07/docs/07-graph1.svg index e6ee94a4..d5de1351 100644 --- a/chapter07/docs/07-graph1.svg +++ b/chapter07/docs/07-graph1.svg @@ -60,7 +60,7 @@ .count { font-size:20px; min-width:35px; text-align:center; } #N { width:6ch; } #scrub { width:clamp(120px,35vw,600px); } - </style><defs><marker id="arrow-CTRL" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#b63838"/></marker><marker id="arrow-DATA" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#536477"/></marker><marker id="arrow-MEM" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#2867b2"/></marker><marker id="arrow-ASSOC" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#9396a3"/></marker><marker id="arrow-PARSER" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#7956a5"/></marker></defs><rect width="100%" height="100%" fill="rgb(250, 251, 252)"/><g><g class="regions" style="opacity: 1;"><g class="region" transform="translate(32,171)"><rect class="region-box" rx="8" width="296" height="102" fill="#f1f6fc"/></g></g><rect class="peep-area" rx="36" style="opacity: 0;"/><g class="edges"><path class="edge ASSOC" id="e1i0" d="M84,527 C84,551 735.5,524 735.5,548" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#1[0] → #18 · ASSOC · 3: $ctrl</title></path><path class="edge ASSOC" id="e1i1" d="M256,379 C256,403 795.5,524 795.5,548" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#1[1] → #16 · ASSOC · 3: arg</title></path><path class="edge ASSOC" id="e5i0" d="M104,258 C104,282 735.5,255 735.5,279" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#5[0] → #6 · ASSOC · 2: $ctrl</title></path><path class="edge ASSOC" id="e5i1" d="M256,258 C256,282 795.5,255 795.5,279" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#5[1] → #8 · ASSOC · 2: arg</title></path><path class="edge CTRL" id="e6i1" d="M124,118 L124,205" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#6[1] → #14 · CTRL</title></path><path class="edge DATA" id="e8i1" d="M244,118 L244,128 L256,128 L256,205" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#8[1] → #17 · DATA</title></path><path class="edge DATA" id="e10i1" d="M256,261 L256,298 L408,298 L408,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#10[1] → #8 · DATA</title></path><path class="edge DATA" id="e10i2" d="M572,278 L572,288 L438,288 L438,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#10[2] → #9 · DATA</title></path><path class="edge CTRL" id="e11i0" d="M104,261 L104,430" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#11[0] → #6 · CTRL</title></path><path class="edge DATA" id="e11i1" d="M408,382 L408,392 L184,392 L184,430" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#11[1] → #10 · DATA</title></path><path class="edge ASSOC" id="e12i0" d="M204,527 C204,551 735.5,604 735.5,628" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#12[0] → #19 · ASSOC · 2: $ctrl</title></path><path class="edge ASSOC" id="e12i1" d="M256,258 C256,282 795.5,604 795.5,628" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#12[1] → #8 · ASSOC · 2: arg</title></path><path class="edge DATA" id="e16i1" d="M256,261 L256,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#16[1] → #8 · DATA</title></path><path class="edge DATA" id="e16i2" d="M420,278 L420,288 L286,288 L286,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#16[2] → #15 · DATA</title></path></g><g class="edge-hits"/><g class="parser" style="opacity: 1;"/><g class="nodes"><g class="node" id="n1" data-id="1" transform="translate(704,548)" style="opacity: 1;"><path class="box" d="M4,0H116Q120,0 120,4V52Q120,56 116,56H4Q0,56 0,52V4Q0,0 4,0Z" fill="#e5e0ff"/><text class="label" text-anchor="middle" x="60" y="48"><tspan>Scope</tspan><tspan class="node-id"> #1</tspan></text><text class="type" text-anchor="middle" y="35" x="60"/><title>#1 Scope + </style><defs><marker id="arrow-CTRL" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#b63838"/></marker><marker id="arrow-DATA" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#536477"/></marker><marker id="arrow-MEM" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#2867b2"/></marker><marker id="arrow-ASSOC" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#9396a3"/></marker><marker id="arrow-PARSER" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#7956a5"/></marker></defs><rect width="100%" height="100%" fill="rgb(250, 251, 252)"/><g><g class="regions" style="opacity: 1;"><g class="region" transform="translate(32,171)"><rect class="region-box" rx="8" width="296" height="102" fill="#f1f6fc"/></g></g><rect class="peep-area" rx="36" style="opacity: 0;"/><g class="edges"><path class="edge ASSOC" id="e1i0" d="M84,527 C84,551 735.5,524 735.5,548" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#1[0] → #18 · ASSOC · 3: $ctrl</title></path><path class="edge ASSOC" id="e1i1" d="M256,379 C256,403 795.5,524 795.5,548" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#1[1] → #16 · ASSOC · 3: arg</title></path><path class="edge ASSOC" id="e5i0" d="M104,258 C104,282 735.5,255 735.5,279" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#5[0] → #6 · ASSOC · 2: $ctrl</title></path><path class="edge ASSOC" id="e5i1" d="M256,258 C256,282 795.5,255 795.5,279" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#5[1] → #8 · ASSOC · 2: arg</title></path><path class="edge CTRL" id="e6i1" d="M124,118 L124,205" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#6[1] → #14 · CTRL</title></path><path class="edge DATA" id="e8i1" d="M244,118 L244,123 Q244,128 249,128 L250,128 Q256,128 256,134 L256,205" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#8[1] → #17 · DATA</title></path><path class="edge DATA" id="e10i1" d="M256,261 L256,290 Q256,298 264,298 L400,298 Q408,298 408,306 L408,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#10[1] → #8 · DATA</title></path><path class="edge DATA" id="e10i2" d="M572,278 L572,283 Q572,288 567,288 L446,288 Q438,288 438,296 L438,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#10[2] → #9 · DATA</title></path><path class="edge CTRL" id="e11i0" d="M104,261 L104,430" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#11[0] → #6 · CTRL</title></path><path class="edge DATA" id="e11i1" d="M408,382 L408,387 Q408,392 403,392 L192,392 Q184,392 184,400 L184,430" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#11[1] → #10 · DATA</title></path><path class="edge ASSOC" id="e12i0" d="M204,527 C204,551 735.5,604 735.5,628" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#12[0] → #19 · ASSOC · 2: $ctrl</title></path><path class="edge ASSOC" id="e12i1" d="M256,258 C256,282 795.5,604 795.5,628" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#12[1] → #8 · ASSOC · 2: arg</title></path><path class="edge DATA" id="e16i1" d="M256,261 L256,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#16[1] → #8 · DATA</title></path><path class="edge DATA" id="e16i2" d="M420,278 L420,283 Q420,288 415,288 L294,288 Q286,288 286,296 L286,326" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#16[2] → #15 · DATA</title></path></g><g class="edge-hits"/><g class="parser" style="opacity: 1;"/><g class="nodes"><g class="node" id="n1" data-id="1" transform="translate(704,548)" style="opacity: 1;"><path class="box" d="M4,0H116Q120,0 120,4V52Q120,56 116,56H4Q0,56 0,52V4Q0,0 4,0Z" fill="#e5e0ff"/><text class="label" text-anchor="middle" x="60" y="48"><tspan>Scope</tspan><tspan class="node-id"> #1</tspan></text><text class="type" text-anchor="middle" y="35" x="60"/><title>#1 Scope Type not computed [0] → #18 ASSOC 3: $ctrl |
