costs.scp (1417B)
1 -- Shared payloads reuse one runtime tree across recursive frames. 2 consumer shared 3 [] @ _ => (1, ("Checkpoint", (leaf, ("finish", leaf)))) 4 [x | xs] @ payload => (1, ("Tick", (x, ("sharedRead", (xs, payload))))) 5 consumer sharedRead 6 (stem leaf, (_, _)) @ (rest, payload) => 7 (2, ("again", (rest, (payload, ("held", payload))))) 8 consumer held 9 (stem leaf, (tail, metadata)) @ payload => (0, (stem leaf, ([payload | tail], metadata))) 10 consumer finish 11 result @ _ => (0, result) 12 13 -- Each read creates another runtime payload before descending. 14 consumer distinct 15 [] @ _ => (1, ("Checkpoint", (leaf, ("finish", leaf)))) 16 [x | xs] @ path => (1, ("ReadBytes", (path, ("loaded", (xs, path))))) 17 consumer loaded 18 (stem leaf, (payload, _)) @ (rest, path) => 19 (2, ("again", (rest, (path, ("held", payload))))) 20 21 -- Each leaf returns before explicit-state delegation advances the list. 22 consumer chain 23 ([], _) @ _ => (1, ("Checkpoint", (leaf, ("finish", leaf)))) 24 ([x | xs], _) @ (loop, payload) => (2, ("leaf", (x, (payload, ("chain", (xs, (loop, payload))))))) 25 (stem leaf, (_, _)) @ (rest, (loop, payload)) => become loop (rest, leaf) @ (loop, payload) 26 consumer leaf 27 value @ payload => (1, ("Tick", (value, ("leafEnd", payload)))) 28 consumer leafEnd 29 (stem leaf, (_, metadata)) @ payload => (0, (stem leaf, (payload, metadata)))