From 3d072fba89076b608cf43c33307122976bcb07d5 Mon Sep 17 00:00:00 2001 From: Joe Savona Date: Tue, 3 Jun 2025 11:33:22 -0700 Subject: [PATCH] Update base for Update on "[compiler] Delay mutation of function expr context variables until function is called" See comments in code. The idea is that rather than immediately processing function expression effects when declaring the function, we record Capture effects for context variables that may be captured/mutated in the function. Then, transitive mutations of the function value itself will extend the range of these values via the normal captured value comutation inference established earlier in the stack (if capture a -> b, then transitiveMutate(b) => mutate(a)). So capture contextVar -> function and transitiveMutate(function) => mutate(contextVar). [ghstack-poisoned]