Combined static and dynamic mutability analysis
Author(s) • • •
Artzi, Shay
Ernst, Michael D.
Glasser, David
Kiezun, Adam
Advisor(s)
Michael Ernst
Date Issued
September 17, 2006
Series/Report no.
Massachusetts Institute of Technology Computer Science and Artificial Intelligence Laboratory
Abstract
Knowing which method parameters may be mutated during a method'sexecution is useful for many software engineering tasks. We presentan approach to discovering parameter immutability, in which severallightweight, scalable analyses are combined in stages, with each stagerefining the overall result. The resulting analysis is scalable andcombines the strengths of its component analyses. As one of thecomponent analyses, we present a novel, dynamic mutability analysisand show how its results can be improved by random input generation.Experimental results on programs of up to 185 kLOC demonstrate that,compared to previous approaches, our approach increases both scalabilityand overall accuracy.
Subjects
immutability
mutability
side effect analysis
purity
pointer analysis
dynamic analysis
mutation
Persistent DSpace Link