{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:08:22Z","timestamp":1750306102028,"version":"3.41.0"},"reference-count":35,"publisher":"Association for Computing Machinery (ACM)","issue":"OOPSLA","license":[{"start":{"date-parts":[[2017,10,12]],"date-time":"2017-10-12T00:00:00Z","timestamp":1507766400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2017,10,12]]},"abstract":"<jats:p>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.<\/jats:p>","DOI":"10.1145\/3133882","type":"journal-article","created":{"date-parts":[[2017,10,13]],"date-time":"2017-10-13T15:15:45Z","timestamp":1507907745000},"page":"1-26","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Abridging source code"],"prefix":"10.1145","volume":"1","author":[{"given":"Binhang","family":"Yuan","sequence":"first","affiliation":[{"name":"Rice University, USA"}]},{"given":"Vijayaraghavan","family":"Murali","sequence":"additional","affiliation":[{"name":"Rice University, USA"}]},{"given":"Christopher","family":"Jermaine","sequence":"additional","affiliation":[{"name":"Rice University, USA"}]}],"member":"320","published-online":{"date-parts":[[2017,10,12]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2015.7332514"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/93542.93576"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2133806.2133826"},{"key":"e_1_2_1_4_1","first-page":"993","article-title":"Latent dirichlet allocation","author":"Blei David M","year":"2003","unstructured":"David M Blei , Andrew Y Ng , and Michael I Jordan . 2003 . Latent dirichlet allocation . Journal of machine Learning research 3 , Jan (2003), 993 \u2013 1022 . David M Blei, Andrew Y Ng, and Michael I Jordan. 2003. Latent dirichlet allocation. Journal of machine Learning research 3, Jan (2003), 993\u20131022.","journal-title":"Journal of machine Learning research 3"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1390630.1390664"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2006.54"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2010.5609703"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2013.6613829"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1137\/1.9781611970319"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/24039.24041"},{"key":"e_1_2_1_11_1","volume-title":"Autofolding for Source Code Summarization. arXiv preprint arXiv:1403.4503","author":"Fowkes Jaroslav","year":"2014","unstructured":"Jaroslav Fowkes , Razvan Ranca , Miltiadis Allamanis , Mirella Lapata , and Charles Sutton . 2014. Autofolding for Source Code Summarization. arXiv preprint arXiv:1403.4503 ( 2014 ). Jaroslav Fowkes, Razvan Ranca, Miltiadis Allamanis, Mirella Lapata, and Charles Sutton. 2014. Autofolding for Source Code Summarization. arXiv preprint arXiv:1403.4503 (2014)."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.3115\/1119312.1119315"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.3115\/1620754.1620807"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1810295.1810335"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/WCRE.2010.13"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.5555\/1734953.1734959"},{"key":"e_1_2_1_17_1","first-page":"1152","article-title":"Automatic algorithm configuration based on local search","volume":"7","author":"Hutter Frank","year":"2007","unstructured":"Frank Hutter , Holger H Hoos , and Thomas St\u00fctzle . 2007 . Automatic algorithm configuration based on local search . In AAAI , Vol. 7. 1152 \u2013 1157 . Frank Hutter, Holger H Hoos, and Thomas St\u00fctzle. 2007. Automatic algorithm configuration based on local search. In AAAI, Vol. 7. 1152\u20131157.","journal-title":"AAAI"},{"key":"e_1_2_1_18_1","volume-title":"Automatic summarising: The state of the art. Information Processing &amp","author":"Jones Karen Sp\u00e4rck","year":"2007","unstructured":"Karen Sp\u00e4rck Jones . 2007. Automatic summarising: The state of the art. Information Processing &amp ; Management 43, 6 ( 2007 ), 1449\u20131481. Karen Sp\u00e4rck Jones. 2007. Automatic summarising: The state of the art. Information Processing &amp; Management 43, 6 (2007), 1449\u20131481."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICASSP.2003.1198798"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICIS.2014.6912159"},{"key":"e_1_2_1_21_1","unstructured":"C. Lopes S. Bajracharya J. Ossher and P. Baldi. 2010. UCI Source Code Data Sets. (2010). http:\/\/www.ics.uci.edu\/$\\ sim$lopes\/datasets\/  C. Lopes S. Bajracharya J. Ossher and P. Baldi. 2010. UCI Source Code Data Sets. (2010). http:\/\/www.ics.uci.edu\/$\\ sim$lopes\/datasets\/"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2597008.2597793"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2597008.2597149"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2015.2465386"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/2591062.2591096"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2013.6613830"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2351676.2351747"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1858996.1859006"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/1985793.1985808"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2011.28"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1273442.1250748"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.5555\/800078.802557"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.3115\/1599081.1599205"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491411.2494587"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2011.6100145"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3133882","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3133882","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T03:30:34Z","timestamp":1750217434000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3133882"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,10,12]]},"references-count":35,"journal-issue":{"issue":"OOPSLA","published-print":{"date-parts":[[2017,10,12]]}},"alternative-id":["10.1145\/3133882"],"URL":"https:\/\/doi.org\/10.1145\/3133882","relation":{},"ISSN":["2475-1421"],"issn-type":[{"type":"electronic","value":"2475-1421"}],"subject":[],"published":{"date-parts":[[2017,10,12]]},"assertion":[{"value":"2017-10-12","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}