Introducing the Active Map operation to unify and improve efficiency of active operations

Frédéric Jouault, Fabien Chhel
2018 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems  
The active operations approach enables incremental evaluation of OCL-like expressions, and can also be used to implement incremental model transformation. Each active operation corresponds to a basic building block such as select, or collect, and encapsulates both its initial computation algorithm as well as its change propagation algorithms. Complex operations such as groupBy can generally be expressed using simpler operations such as select and collect, but have better performance with an
more » ... cient map data structure (e.g., a HashMap) as internal state. However, implementing new algorithms for each new kind of complex active operation is costly and error prone. In this paper, we introduce the Active Map active operation that can be used as a basis to express several complex operations, such as groupBy, without specific propagation algorithms. Several complex operations are shown to be expressible in terms of the Active Map operation without sacrificing scalability when compared to ad-hoc implementations.
dblp:conf/models/JouaultC18 fatcat:nnj3taybs5fbrafjngp7g4whbe