Mon 26 Oct 2015 14:30 - 15:00 at Grand Station 2 - Model and Program Transformation Chair(s): Tijs van der Storm

The application of program transformations and refactorings involves the risk of capturing variables, which may break the intended semantics of the transformed code. One way to resolve variable capture is by renaming of the involved identifiers. However, in a modular context, the renaming of exported declarations is undesirable (affecting a module's clients), and the renaming of imported declarations is impossible (requiring changes to third-party modules). We present an algorithm name-fix that detects and eliminates variable capture modularly. We extend a previous non-modular version of name-fix in order to (i) minimize renamings of exported declarations, (ii) propagate necessary renamings of exported declarations to clients, and (iii) avoid renamings of imported declarations altogether. Together with support for transitive name bindings and conflicting declarations, our extensions to name-fix enable the application to real-world languages that feature separate compilation. To demonstrate the applicability of name-fix, we use it to modularly resolve variable capture for optimizations, refactorings, and desugarings of Lightweight Java.

Mon 26 Oct

Displayed time zone: Eastern Time (US & Canada) change

13:30 - 15:00
Model and Program TransformationSLE at Grand Station 2
Chair(s): Tijs van der Storm CWI
13:30
30m
Talk
Distributed Model-to-Model Transformation with ATL on MapReduce
SLE
DOI
14:00
30m
Talk
Managing Uncertainty in Bidirectional Model Transformations
SLE
Romina Eramo University of L'Aquila, Italy, Alfonso Pierantonio University of L'Aquila, Italy, Gianni Rosa University of L'Aquila, Italy
DOI
14:30
30m
Talk
Modular Capture Avoidance for Program Transformations
SLE
Nico Ritschel TU Darmstadt, Germany, Sebastian Erdweg TU Darmstadt, Germany
Link to publication DOI