From c50d1908146226eb1703e6a0263b9b61ebc83db8 Mon Sep 17 00:00:00 2001 From: Joe Savona Date: Fri, 30 May 2025 15:56:57 -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]