Semantic Patch Inference

We propose a tool for inferring transformation specifications from a few examples of original and updated code. These transformation specifications may contain multiple code fragments from within a single function, all of which must be present for the transformation to apply. This makes the inferred...

Full description

Saved in:
Bibliographic Details
Main Authors: Andersen, Jesper, Nguyen, Anh Cuong, LO, David, Lawall, Julia, KHOO, Siau-Cheng
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2012
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/1574
http://delivery.acm.org/10.1145/2360000/2351753/p382-andersen.pdf?ip=202.161.43.232&acc=ACTIVE%20SERVICE&CFID=114134355&CFTOKEN=87100442&__acm__=1347419812_e6995483f9578dba755c863acd0545a9
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-2573
record_format dspace
spelling sg-smu-ink.sis_research-25732012-09-24T03:48:42Z Semantic Patch Inference Andersen, Jesper Nguyen, Anh Cuong LO, David Lawall, Julia KHOO, Siau-Cheng We propose a tool for inferring transformation specifications from a few examples of original and updated code. These transformation specifications may contain multiple code fragments from within a single function, all of which must be present for the transformation to apply. This makes the inferred transformations context sensitive. Our algorithm is based on depth-first search, with pruning. Because it is applied locally to a collection of functions that contain related changes, it is efficient in practice. We illustrate the approach on an example drawn from recent changes to the Linux kernel. 2012-09-01T07:00:00Z text https://ink.library.smu.edu.sg/sis_research/1574 http://delivery.acm.org/10.1145/2360000/2351753/p382-andersen.pdf?ip=202.161.43.232&acc=ACTIVE%20SERVICE&CFID=114134355&CFTOKEN=87100442&__acm__=1347419812_e6995483f9578dba755c863acd0545a9 Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Software evolution collateral evolution semantic pat Computer Sciences Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Software evolution
collateral evolution
semantic pat
Computer Sciences
Software Engineering
spellingShingle Software evolution
collateral evolution
semantic pat
Computer Sciences
Software Engineering
Andersen, Jesper
Nguyen, Anh Cuong
LO, David
Lawall, Julia
KHOO, Siau-Cheng
Semantic Patch Inference
description We propose a tool for inferring transformation specifications from a few examples of original and updated code. These transformation specifications may contain multiple code fragments from within a single function, all of which must be present for the transformation to apply. This makes the inferred transformations context sensitive. Our algorithm is based on depth-first search, with pruning. Because it is applied locally to a collection of functions that contain related changes, it is efficient in practice. We illustrate the approach on an example drawn from recent changes to the Linux kernel.
format text
author Andersen, Jesper
Nguyen, Anh Cuong
LO, David
Lawall, Julia
KHOO, Siau-Cheng
author_facet Andersen, Jesper
Nguyen, Anh Cuong
LO, David
Lawall, Julia
KHOO, Siau-Cheng
author_sort Andersen, Jesper
title Semantic Patch Inference
title_short Semantic Patch Inference
title_full Semantic Patch Inference
title_fullStr Semantic Patch Inference
title_full_unstemmed Semantic Patch Inference
title_sort semantic patch inference
publisher Institutional Knowledge at Singapore Management University
publishDate 2012
url https://ink.library.smu.edu.sg/sis_research/1574
http://delivery.acm.org/10.1145/2360000/2351753/p382-andersen.pdf?ip=202.161.43.232&acc=ACTIVE%20SERVICE&CFID=114134355&CFTOKEN=87100442&__acm__=1347419812_e6995483f9578dba755c863acd0545a9
_version_ 1770571305279553536