Self model-driven engineering through metaprograms

  • Authors:
  • Yannis Lilis;Anthony Savidis;Yannis Valsamakis

  • Affiliations:
  • Institute of Computer Science FORTH, Vassilika Vouton, Heraklion, Crete, Greece;University of Crete, Vassilika Vouton, Heraklion, Crete, Greece;Institute of Computer Science FORTH, Vassilika Vouton, Heraklion, Crete, Greece

  • Venue:
  • Proceedings of the 17th Panhellenic Conference on Informatics
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we focus on generative model-driven engineering (MDE) tools and explore the notion of incorporating their deployment directly within the program source through metaprogramming. Our approach is based on the following principles: (i) the MDE tool is invoked as part of the metaprogram evaluation; (ii) instead of generating code, the MDE tool generates source fragments as abstract syntax trees (ASTs); (iii) the generated source fragments are directly inserted into the main program source through generator macros of the metaprogram; and (iv) the resulting program that incorporates both model code and custom application code can be normally compiled to produce the final application. Using this methodology, the metaprogram practically operates as an interactive editor for the program itself. We assess the validity of our approach with proof-of-concept case studies where all MDE deployment is performed through metaprogramming.