In this paper, we consider the problem of source code abridgment, where the goal is to remove statements from a source code in order to display the source code in a small space, while at the same time leaving the ``important'' parts of the source code intact, so that an engineer can read the code and quickly understand purpose of the code. To this end, we develop an algorithm that looks at a number of examples, human-created source code abridgments, and learns how to remove lines from the code in order to mimic the human abridger. The learning algorithm takes into account syntactic features of the code, as well as semantic features such as control flow and data dependencies. Through a comprehensive user study, we show that the abridgments that our system produces can decrease the time that a user must look at code in order to understand its functionality, as well as increase the accuracy of the assessment, while displaying the code in a greatly reduced area.
Wed 25 OctDisplayed time zone: Tijuana, Baja California change
13:30 - 15:00 | |||
13:30 22mTalk | Effective Interactive Resolution of Static Analysis Alarms OOPSLA Xin Zhang Massachusetts Institute of Technology, USA, Radu Grigore University of Kent, Xujie Si University of Pennsylvania, Mayur Naik University of Pennsylvania DOI | ||
13:52 22mTalk | Learning to Blame: Localizing Novice Type Errors with Data-Driven Diagnosis OOPSLA Eric Seidel University of California at San Diego, USA, Huma Sibghat University of California at San Diego, USA, Kamalika Chaudhuri University of California at San Diego, USA, Westley Weimer University of Virginia, USA, Ranjit Jhala University of California at San Diego, USA DOI | ||
14:15 22mTalk | Abridging Source Code OOPSLA Binhang Yuan Rice University, USA, Vijayaraghavan Murali Rice University, USA, Chris Jermaine Rice University DOI | ||
14:37 22mTalk | Evaluating and Improving Semistructured Merge OOPSLA Guilherme Cavalcanti Federal University of Pernambuco, Brazil, Paulo Borba Federal University of Pernambuco, Brazil, Paola Accioly Federal University of Pernambuco, Brazil DOI |