Repository logo
 

Source code patches from dynamic analysis

Published version
Peer-reviewed

Loading...
Thumbnail Image

Change log

Abstract

Dynamic analysis can identify improvements to programs that cannot feasibly be identified by static analysis; concurrency improvements are a motivating example. However, mapping these dynamic-analysis-based improvements back to patch-like source-code changes is non-trivial. We describe a system, Scopda, for generating source-code patches for improvements identified by execution-trace-based dynamic analysis. Scopda uses a graph-based static program representation (abstract program graph, APG), containing inter-procedural control flow and local data flow information, to analyse and transform static source-code. We demonstrate Scopda's ability to generate sensible source code patches for Java programs, though it is fundamentally language agnostic.

Description

Journal Title

Proceedings of the 23rd ACM International Workshop on Formal Techniques for Java-like Programs

Conference Name

Proceedings of the 23rd ACM International Workshop on Formal Techniques for Java-like Programs

Journal ISSN

Volume Title

Publisher

Association for Computing Machinery (ACM)

Rights and licensing

Except where otherwised noted, this item's license is described as Publisher's own licence
Sponsorship
The first author was funded by the Engineering and Physical Sciences Research Council (EPSRC), the Cambridge Trusts, and the University of Cambridge Department of Computer Science and Technology.