On Additivity in Transformation Languages
On Additivity in Transformation Languages
复制标题
论转换语言中的可加性
DOI:
10.1109/models.2017.21
复制
发表时间:
2017
期刊:
影响因子:
--
通讯作者:
Tisi Massimo
中科院分区:
文献类型:
--
作者:
Hidaka Soichiro;Jouault Frederic;Tisi Massimo
Some areas in computer science are characterized by a shared base structure for data artifacts (e.g., list, table, tree, graph, model), and dedicated languages for transforming this structure. We observe that in several of these languages it is possible to identify a clear correspondence between some elements in the transformation code and the output they generate. Conversely given an element in an output artifact it is often possible to immediately trace the transformation parts that are responsible for its creation. In this paper we formalize this intuitive concept by defining a property that characterizes several transformation languages in different domains. We name this property additivity: for a given fixed input, the addition or removal of program elements results in a corresponding addition or removal of parts of the output. We provide a formal definition for additivity and argue that additivity enhances modularity and incrementality of transformation engineering activities, by enumerating a set of tasks that this property enables or facilitates. Then we describe how it is instantiated in some well-known transformation languages. We expect that the development of new formal results on languages with additivity will benefit from our definitions.