Abstract
A bidirectional transformation consists of a pair of unidirectional transformations: a forward transformation that maps one data structure called source to another called view, and a backward transformation that reflects changes in the view to the source. Bidirectional transformation has many useful applications such as replicated data synchronization, presentation-oriented editor development, and software artifact synchronization. In a previous work, we proposed a framework in which a backward transformation is automatically generated from a forward transformation by derivation of a complementary function if the forward transformation is given by a program in a simple functional language. However, the language has a severe restriction that no variable is allowed to be used more than once. In this paper, we show that tupling transformation relaxes this restriction, allowing us to handle a wider class of bidirectional transformations that may contain duplications.
Original language | English |
---|---|
Pages (from-to) | 56-75 |
Number of pages | 20 |
Journal | Computer Software |
Volume | 26 |
Issue number | 2 |
Publication status | Published - 2009 |
Externally published | Yes |
ASJC Scopus subject areas
- Software