University of Virginia
There are more bugs in real-world programs than human programmers can realistically address. This paper evaluates two research questions: "What fraction of bugs can be repaired automatically?" and "How much does it cost to repair a bug automatically?" In previous work, the authors presented GenProg, which uses genetic programming to repair defects in off-the-shelf C programs. To answer these questions, they: propose novel algorithmic improvements to GenProg that allow it to scale to large programs and find repairs 68% more often, exploit GenProg's inherent parallelism using cloud computing resources to provide grounded, human-competitive cost measurements, and generate a large, indicative benchmark set to use for systematic evaluations.