• DocumentCode
    635269
  • Title

    LASE: An example-based program transformation tool for locating and applying systematic edits

  • Author

    Jacobellis, John ; Na Meng ; Miryung Kim

  • Author_Institution
    Univ. of Texas at Austin, Austin, TX, USA
  • fYear
    2013
  • fDate
    18-26 May 2013
  • Firstpage
    1319
  • Lastpage
    1322
  • Abstract
    Adding features and fixing bugs in software often require systematic edits which are similar, but not identical, changes to many code locations. Finding all edit locations and editing them correctly is tedious and error-prone. In this paper, we demonstrate an Eclipse plug-in called Lase that (1) creates context-aware edit scripts from two or more examples, and uses these scripts to (2) automatically identify edit locations and (3) transform the code. In Lase, users can view syntactic edit operations and corresponding context for each input example. They can also choose a different subset of the examples to adjust the abstraction level of inferred edits. When Lase locates target methods matching the inferred edit context and suggests customized edits, users can review and correct LASE´s edit suggestion. These features can reduce developers´ burden in repetitively applying similar edits to different methods. The tool´s video demonstration is available at https://www.youtube.com/ watch?v=npDqMVP2e9Q.
  • Keywords
    program diagnostics; software engineering; software tools; ubiquitous computing; Eclipse plug-in; LASE; code transformation; context-aware edit scripts; customized edits; edit context; edit location identification; edit suggestion; example-based program transformation tool; inferred edit abstraction level; syntactic edit operations; systematic edits; Abstracts; Cloning; Concrete; Context; Software; Syntactics; Systematics;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2013 35th International Conference on
  • Conference_Location
    San Francisco, CA
  • Print_ISBN
    978-1-4673-3073-2
  • Type

    conf

  • DOI
    10.1109/ICSE.2013.6606707
  • Filename
    6606707