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 Oct Times are displayed in time zone: Tijuana, Baja California change
13:30 - 13:52 Talk | Effective Interactive Resolution of Static Analysis Alarms OOPSLA Xin ZhangMassachusetts Institute of Technology, USA, Radu GrigoreUniversity of Kent, Xujie SiUniversity of Pennsylvania, Mayur NaikUniversity of Pennsylvania DOI | ||
13:52 - 14:15 Talk | Learning to Blame: Localizing Novice Type Errors with Data-Driven Diagnosis OOPSLA Eric SeidelUniversity of California at San Diego, USA, Huma SibghatUniversity of California at San Diego, USA, Kamalika ChaudhuriUniversity of California at San Diego, USA, Westley WeimerUniversity of Virginia, USA, Ranjit JhalaUniversity of California at San Diego, USA DOI | ||
14:15 - 14:37 Talk | Abridging Source Code OOPSLA Binhang YuanRice University, USA, Vijayaraghavan MuraliRice University, USA, Chris JermaineRice University DOI | ||
14:37 - 15:00 Talk | Evaluating and Improving Semistructured Merge OOPSLA Guilherme CavalcantiFederal University of Pernambuco, Brazil, Paulo BorbaFederal University of Pernambuco, Brazil, Paola AcciolyFederal University of Pernambuco, Brazil DOI |