Introduction
When a program's behavior depends on repeating certain steps until a stable result is reached, simple one-pass analysis is not enough. We need a way to repeatedly update information until nothing changes anymore. This is where iterative data flow frameworks come in, helping compilers analyze programs that have loops or repeated computations.