summaryrefslogtreecommitdiff
path: root/chapter11/docs/example2b-final.json
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2026-10-03 14:03:48 -0700
committerCliff Click <cliffc@acm.org>2026-10-03 14:03:48 -0700
commit22df891893d30e9906d0b14fc3ae5d8e67d500b2 (patch)
tree2bda142f92febc8b26f1cabd4bb0c46d1864f34b /chapter11/docs/example2b-final.json
parentc3958e34c0de21df52e57e47e4f47ffe6464f138 (diff)
downloadSimple-22df891893d30e9906d0b14fc3ae5d8e67d500b2.tar.gz
Simple-22df891893d30e9906d0b14fc3ae5d8e67d500b2.zip
Chapter renumber, and split ch 17
Renumber chapters 10a, 10b, 11, 12, 13, 14 -> 10, 11, 13, 12, [11,14]. Split ch 17 into a 17a and 17b; shuffle around im/mutable syntax to be consistent, and present it more slowly. THe new immutable syntax is pushed through all later chapters
Diffstat (limited to 'chapter11/docs/example2b-final.json')
-rw-r--r--chapter11/docs/example2b-final.json251
1 files changed, 251 insertions, 0 deletions
diff --git a/chapter11/docs/example2b-final.json b/chapter11/docs/example2b-final.json
new file mode 100644
index 00000000..b0a7a2f3
--- /dev/null
+++ b/chapter11/docs/example2b-final.json
@@ -0,0 +1,251 @@
+{
+ "ver": 1,
+ "comp": "chapter11/docs/example2b-final.svg",
+ "step": 100,
+ "roots": [
+ 23
+ ],
+ "scope": 0,
+ "nodes": [
+ {
+ "id": 1,
+ "label": "Start",
+ "type": null,
+ "kind": "CTRL",
+ "edges": [],
+ "proj": null
+ },
+ {
+ "id": 3,
+ "label": "$mem",
+ "type": null,
+ "kind": "MEM",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 1,
+ "role": "MEM",
+ "label": null
+ }
+ ],
+ "proj": {
+ "par": 1,
+ "idx": 1
+ }
+ },
+ {
+ "id": 5,
+ "label": "new Point",
+ "type": null,
+ "kind": "DATA",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 0,
+ "role": "CTRL",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 6,
+ "label": "#0",
+ "type": null,
+ "kind": "DATA",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 1,
+ "role": "ASSOC",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 8,
+ "label": "Store p.y",
+ "type": "MEM#3",
+ "kind": "MEM",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 0,
+ "role": "CTRL",
+ "label": null
+ },
+ {
+ "idx": 1,
+ "def": 3,
+ "role": "MEM",
+ "label": null
+ },
+ {
+ "idx": 2,
+ "def": 5,
+ "role": "DATA",
+ "label": null
+ },
+ {
+ "idx": 3,
+ "def": 6,
+ "role": "DATA",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 13,
+ "label": "#3",
+ "type": null,
+ "kind": "DATA",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 1,
+ "role": "ASSOC",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 15,
+ "label": "#4",
+ "type": null,
+ "kind": "DATA",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 1,
+ "role": "ASSOC",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 22,
+ "label": "MemMerge",
+ "type": null,
+ "kind": "MEM",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 0,
+ "role": "CTRL",
+ "label": null
+ },
+ {
+ "idx": 1,
+ "def": 3,
+ "role": "MEM",
+ "label": null
+ },
+ {
+ "idx": 2,
+ "def": 27,
+ "role": "MEM",
+ "label": null
+ },
+ {
+ "idx": 3,
+ "def": 8,
+ "role": "MEM",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 23,
+ "label": "Return",
+ "type": null,
+ "kind": "CTRL",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 0,
+ "role": "CTRL",
+ "label": null
+ },
+ {
+ "idx": 1,
+ "def": 22,
+ "role": "MEM",
+ "label": null
+ },
+ {
+ "idx": 2,
+ "def": 5,
+ "role": "DATA",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 27,
+ "label": "Store p.x",
+ "type": "MEM#2",
+ "kind": "MEM",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 0,
+ "role": "CTRL",
+ "label": null
+ },
+ {
+ "idx": 1,
+ "def": 3,
+ "role": "MEM",
+ "label": null
+ },
+ {
+ "idx": 2,
+ "def": 5,
+ "role": "DATA",
+ "label": null
+ },
+ {
+ "idx": 3,
+ "def": 28,
+ "role": "DATA",
+ "label": null
+ }
+ ],
+ "proj": null
+ },
+ {
+ "id": 28,
+ "label": "Phi x value",
+ "type": null,
+ "kind": "PHI",
+ "edges": [
+ {
+ "idx": 0,
+ "def": 0,
+ "role": "ASSOC",
+ "label": null
+ },
+ {
+ "idx": 1,
+ "def": 13,
+ "role": "DATA",
+ "label": null
+ },
+ {
+ "idx": 2,
+ "def": 15,
+ "role": "DATA",
+ "label": null
+ }
+ ],
+ "proj": null
+ }
+ ],
+ "groups": []
+}