Programming language approaches to bidirectional transformation

Bidirectional transformations are pairs of transformations going back and forth between two data domains, possibly taking extra information into account to disambiguate in one or both directions, while being governed by certain consistency conditions. Application scenarios are view-update propagation in databases, model-driven engineering, and programming environments like structured editors, among others. Consequently, diverse disciplines contribute to the interest and development in this area. We focus on approaches that, rather than being centered on the data, take the involved transformations seriously as programs to analyze and manipulate.

[1]  Kazutaka Matsuda,et al.  Bidirectionalization transformation based on automatic derivation of view complement functions , 2007, ICFP '07.

[2]  Benjamin C. Pierce,et al.  Relational lenses: a language for updatable views , 2006, PODS '06.

[3]  Susumu Katayama Systematic search for lambda expressions , 2005, Trends in Functional Programming.

[4]  Kazutaka Matsuda,et al.  Three Complementary Approaches to Bidirectional Programming , 2010, SSGIP.

[5]  Janis Voigtländer Bidirectionalization for free! (Pearl) , 2009, POPL '09.

[6]  Gerhard Weikum,et al.  ACM Transactions on Database Systems , 2005 .

[7]  Meng Wang,et al.  Incremental updates for efficient bidirectional transformations , 2011, ICFP '11.

[8]  Nicolas Spyratos,et al.  Update semantics of relational views , 1981, TODS.

[9]  Janis Voigtländer Ideas for connecting inductive program synthesis and bidirectionalization , 2012, PEPM '12.

[10]  Kazutaka Matsuda,et al.  Bidirectionalizing graph transformations , 2010, ICFP '10.

[11]  Ute Schmid,et al.  Inductive Synthesis of Functional Programs: An Explanation Based Generalization Approach , 2006, J. Mach. Learn. Res..

[12]  Benjamin C. Pierce,et al.  Combinators for bi-directional tree transformations: a linguistic approach to the view update problem , 2005, POPL '05.

[13]  Shin-Cheng Mu,et al.  A programmable editor for developing structured documents based on bidirectional transformations , 2004, PEPM '04.

[14]  Ralf Lämmel,et al.  Bidirectional Transformations: A Cross-Discipline Perspective , 2009, ICMT@TOOLS.

[15]  Zhenjiang Hu,et al.  Delta Lenses over Inductive Types , 2012 .

[16]  Meng Wang,et al.  Combining syntactic and semantic bidirectionalization , 2010, ICFP '10.