research

Generating attribute grammar-based bidirectional transformations from rewrite rules

Abstract

Higher order attribute grammars provide a convenient means for specifying uni-directional transformations, but they provide no direct support for bidirectional transformations. In this paper we show how rewrite rules (with non-linear right hand sides) that specify a forward/get transformation can be inverted to specify a partial backward/put transformation. These inverted rewrite rules can then be extended with additional rules based on characteristics of the source language grammar and forward transformations to create, under certain circumstances, a total backward transformation. Finally, these rules are used to generate attribute grammar specifications implementing both transformations.This work is partly funded by the following projects: European Regional Development Fund (ERDF) through the program COMPETE, project reference FCOMP-01-0124-FEDER-020532, by the North Portugal Regional Operational Programme (ON.2 - O Novo Norte); under the National Strategic Reference Framework (NSRF), through the ERDF, project reference RL3 SENSING NORTE-07-0124-FEDER-000058; by the Portuguese Government through FCT (Foundation for Science and Technology); by the U.S. National Science Foundation (NSF) award No. 0905581 and 1047961; and by the FLAD/NSF program Portugal-U.S. Research Networks 2011

    Similar works