Authors:
Kai Adam
;
Arvid Butting
;
Oliver Kautz
;
Jerome Pfeiffer
;
Bernhard Rumpe
and
Andreas Wortmann
Affiliation:
RWTH Aachen University, Germany
Keyword(s):
Model-driven Development, Template-based Code Generation.
Related
Ontology
Subjects/Areas/Topics:
Applications and Software Development
;
Generative Programming
;
Methodologies, Processes and Platforms
;
Model Transformation
;
Model Transformations and Generative Approaches
;
Model-Driven Software Development
;
Models
;
Paradigm Trends
;
Software Engineering
Abstract:
Model-driven development leverages transformations to produce general-purpose programming language artifacts. Model-to-text (M2T) transformations facilitate ad-hoc transformation development by requiring less preparation than model-to-model transformations. Employing template engines is common for M2T trans- formations. However, the M2T transformation artifacts (templates) rarely provide interfaces to support their black-box integration. Instead, composing templates requires in-depth expertise of their internals to identify and pass the required arguments. This complicates their reuse, and, hence, code generator development. Where switching to more expressive template engines is not feasible, conceiving templates as models can alleviate these challenges. We present a method to retrofit type-safe signatures into templates, generate typed interfaces from these, and show how this can be utilized to compose independently developed templates for more efficient code generator engineering.