About
CAPESA is an Inria “Associated Team”,
- Principal investigator (Inria): Laure Gonnord, CASH.
- Principal investigator (Partner institution): Sébastien Mosser, Département d’informatique, UQAM (Canada)
- Other participants:] Ludovic Henrio (CNRS, CASH, LIP), Matthieu Moy (University Claude Bernard Lyon 1, CASH, LIP), Jean Privat (UQAM, Canada)
Research Project
In this project we propose to study code transformation in terms of
“semantic diff”. This notion will be defined thanks to code
intermediate representations such as Abstract Syntax Trees (AST) or
the control flow graph, not by textual representation. The objective
is not only to compute but also to manipulate these “diffs” in several
contexts: being able to reapply a diff on another program than the one
it comes from, quantify the interference between two diffs, and more
generally to study the composability of several diffs. The approach
will be experimentally validated on problems coming from the domain of
expertise of both teams of the cooperation: compiler pass analyses
(expertise of CASH), and git commits (expertise of UQAM). The
complementarity of the analysis and compilation approaches of the CASH
team and the expertise on software engineering of the UQAM member will
ensure the success and the originality of the project.
Keywords
static analysis, compilation, software engineering, software
evolution, code transformation, semantics