Theory and Practice of Model Transformations
5th International Conference, ICMT 2012, Prague, Czech Republic, May 28-29, 2012. Proceedings
Chapter and Conference Paper
In the database community, many synthesizers have been proposed to synthesize unidirectional programs (queries) from tabular examples, but it remains as a challenge to synthesize bidirectional programs (view upda...
Chapter and Conference Paper
Extending a programming language with syntactic sugars is common practice in language design. Given a core language, one can define a surface language on top of it with sugars. We propose a lazy desugaring sys...
Chapter and Conference Paper
Bidirectional transformations (BX) are a solution to the view update problem and widely used for synchronizing data. The semantics and correctness of bidirectional programs have been investigated intensively d...
Chapter and Conference Paper
The Datalog language is used in many potential applications including database queries, program analysis, bidirectional transformations, and so forth. In practice, such a Datalog program is expected to be well...
Chapter
Putback-based bidirectional programming allows the programmer to write only one backward transformation, from which the unique corresponding forward transformation is derived for free. A key distinguishing fea...
Chapter and Conference Paper
A lens is an optical device which refracts light. Properly adjusted, it can be used to project sharp images of objects onto a screen—a principle underlying photography as well as human vision. Striving for cla...
Chapter and Conference Paper
A bidirectional transformation consists of pairs of transformations —a forward transformation get produces a target view from a source, while a putback transformation put puts back modifications on the view to th...
Book and Conference Proceedings
5th International Conference, ICMT 2012, Prague, Czech Republic, May 28-29, 2012. Proceedings
Chapter and Conference Paper
Buneman et al. proposed a graph algebra called UnCAL (Unstructured CALculus) for compositional graph transformations based on structural recursion, and we have recently applied to model transformations. The co...
Chapter and Conference Paper
MapReduce, being inspired by the map and reduce primitives available in many functional languages, is the de facto standard for large scale data-intensive parallel programming. Although it has succeeded in pop...
Chapter and Conference Paper
ATL is a language for describing model transformations currently in uni-direction. In our previous work we have shown that transformations of graph structures given in some form can be bidirectionalized and ha...
Chapter and Conference Paper
Program calculation, being a programming technique that derives programs from specification by means of formula manipulation, is a challenging activity. It requires human insights and creativity, and needs sys...
Chapter and Conference Paper
XQuery is a DBPL for querying XML databases. The semantics of XQuery is context sensitive and requires preservation of document order. In this paper, we propose, as far as we are aware, the first XQuery fusion...
Chapter and Conference Paper
Pattern matching is advantageous for understanding and reasoning about function definitions, but it tends to tightly couple the interface and implementation of a datatype. Significant effort has been invested ...
Chapter and Conference Paper
The key point to leverage model-based techniques on runtime system management is to ensure the correct synchronization between the running system and its model-based view. In this paper, we present a generativ...
Chapter and Conference Paper
Program inversion has many applications such as in the implementation of serialization/deserialization and in providing support for redo/undo, and has been studied by many researchers. However, little attentio...
Book and Conference Proceedings
7th Asian Symposium, APLAS 2009, Seoul, Korea, December 14-16, 2009. Proceedings
Chapter and Conference Paper
Many useful calculation rules, such as fusion and tupling, rely on well-structured functions, especially in terms of inputs and outputs. For instance, fusion requires that well-produced outputs should be conne...
Chapter and Conference Paper
We present a new derivation of efficient algorithms for a class of optimization problems called maximum marking problems. We extend the class of weight functions used in the specification to allow for weight f...
Chapter and Conference Paper
Binding-Time Analysis (BTA) is one of the compile-time program analyses which is a general framework for program optimization and program generation [1]. The task of BTA is to divide a source program into two ...