Analyzing the environment structure of higher-order languages using frame strings

Matthew Might, Olin Shivers
2007 Theoretical Computer Science  
Reasoning about program behaviour in programming languages based on the λ calculus requires reasoning in a unified way about control, data and environment structure. Previous analysis work has done an inadequate job on the environment component of this task. We develop a new analytic framework, ∆CFA, which is based on a new abstraction: frame strings, an enriched variant of procedure strings that can be used to model both control flow and environment allocation. This abstraction enables new
more » ... ronment-sensitive analyses and transformations that have not been previously attainable. We state the critical theorems needed to establish correctness of the entire technology suite, with their proofs.
doi:10.1016/j.tcs.2006.12.031 fatcat:ariqc6ukl5eprlfidptb3uhddi