tool. Overall we were truly impressed by the
compositional flexibility which allowed us to safely
and easily manipulate and extend the produced
interface and application code without suffering
from maintenance issues. We believe our work
reveals the chances by combining metaprogramming
and generative MDE tools, and anticipate more
efforts to further exploit this field.
REFERENCES
Actifsource GmbH (2010). Actifsource Code Generator
for Eclipse. http://www.actifsource.com/_downloads/
actifsource_code_generator_for_Eclipse_en.pdf
Accessed 29 Oct 2013.
Antkiewicz, M. 2007. Round-trip engineering using
framework-specific modeling languages. In
Companion to the 22nd ACM SIGPLAN conference on
Object-oriented programming systems and
applications companion (OOPSLA'07).ACM,927-928.
DOI= http://doi.acm.org/10.1145/1297846.1297949.
Badreddin, O. and Lethbridge, T.C. 2013. Model Oriented
Programming: Bridging the Code-Model Divide. In
Proceedings of the 5th International Workshop on
Modeling in Software Engineering, IEEE, pp. 69-75,
DOI=http://dx.doi.org/10.1109/MiSE.2013.6595299.
Bettini, L. 2013. Implementing Domain-Specific
Languages with Xtext and Xtend. Packt Publishing.
Calcagno, C., Taha, W., Huang, L. and Leroy, X. 2001. A
bytecode-compiled, type-safe, multi-stage language.
Chalabine, M. and Kessler, C. 2007. A Formal Framework
for Automated Round-Trip Software Engineering in
Static Aspect Weaving and Transformations. In
Proceedings of the 29th international conference on
Software Engineering (ICSE '07). IEEE, 137-146.
DOI= http://dx.doi.org/10.1109/ICSE.2007.7.
Desfray, P. 2009. Modelio: Globalizing MDA. In Proc. of
the Tools and Consultancy Track of the Fifth
European Conference on Model-Driven Architecture
Foundations and Applications (ECMDA-FA 2009).
Dybvig, R. K. 2009. The Scheme Programming Language
(fourth edition). The MIT Press.
Eclipse Foundation. 2008. Eclipse Modeling Framework
(EMF). http://www.eclipse.org/modeling/emf/
Accessed 29 Oct 2013.
Fleutot, F. 2007. Metalua Manual. http://metalua.luaforge.
net/metalua-manual.html. Accessed 29 Oct 2013.
Hemel, Z., Kats, L. C. L., Groenewegen, D. M. and
Visser, E. 2010. Code generation by model
transformation: a case study in transformation
modularity. Software and Systems Modelling,
9(3):375-402. DOI=http://dx.doi.org/10.1007/s10270-
009-0136-1.
Lanusse, A., Tanguy, Y., Espinoza, H., Mraidha, C.,
Gerard, S., Tessier, P., Schnekenburger, R., Dubois,
H. and Terrier, F. 2009. Papyrus UML: an open source
toolset for MDA. In Proceedings of the Tools and
Consultancy Track of the Fifth European Conference
on Model-Driven Architecture Foundations and
Applications (ECMDA-FA 2009).
Lilis, Y. and Savidis, A. 2012. Supporting Compile-Time
Debugging and Precise Error Reporting in Meta-
Programs. In TOOLS 2012, International Conference
on Technology of ObjectOriented Languages and
Systems, Springer LNCS 7304, pp. 155-170. DOI=
http://dx.doi.org/10.1007/978-3-642-30561-0_12.
Michotte, B. and Vanderdonckt, J. 2008. GrafiXML, a
Multi-target User Interface Builder Based on
UsiXML. In Proceedings of ICAS 2008 4th
International Conference on Autonomic and
Autonomous Systems, Gosier, Guadeloupe, IEEE, 15-
22. DOI= http://dx.doi.org/10.1109/ICAS.2008.29.
Neverov, G. and Roe, P. 2004. Metaphor: A Multi-Stage,
Object-Oriented Programming Language. In
Proceedings of the Third International Conference on
Generative Programming and Component
Engineering (GPCE '04), Vancouver, Canada,
Springer LNCS 3286, pp. 168-185,
DOI=http://dx.doi.org/ 10.1007/978-3-540-30175-2_9.
Obeo. 2006. Acceleo: MDA generator. http://www.
acceleo.org/pages/home/en. Accessed 29 Oct 2013.
OMG. 2012. Object Management Group Object Constraint
Language (OCL). http://www.omg.org/spec/OCL/
ISO/19507/PDF/ Accessed 29 Oct 2013.
Sauer, S. and Engels, G. 2007. Easy model-driven
development of multimedia user interfaces with
GuiBuilder. In Proceedings of the 4th international
conference on Universal Access in Human Computer
Interaction (UAHCI'07), Beijing, China, Springer
LNCS 4554, pp. 537-546, DOI= http://dx.doi.org/
10.1007/978-3-540-73279-2_60.
Savidis, A. 2012. Delta Programming Language.
Available online from: http://www.ics.forth.gr/hci/
files/plang/Delta/Delta.html. Accessed 29 Oct 2013.
Sheard, T. 1999. Using MetaML: A Staged Programming
Language. In: Advanced Functional Programming.
Springer LNCS 1608, pp. 207–239, DOI=http://
dx.doi.org/10.1007/10704973_5.
Sheard, T., Benaissa, Z. and Martel, M. 2000. Introduction
to Multistage Programming Using MetaML. Pacific
Software Research Center, Oregon Graduate Institute,
2nd edition. Available from: http://web.cecs.pdx.edu/
~sheard/papers/manual.ps. Accessed 29 Oct 2013.
Sheard, T. and Peyton Jones, S. 2002. Template
metaprogramming for Haskell. SIGPLAN Not. 37, 12,
60-75, DOI=http://dx.doi.org/10.1145/636517.636528.
Staiger, S. 2007. Static Analysis of Programs with
Graphical User Interface. In Proceedings of 11th
European Conference on Software Maintenance and
Reengineering (CSMR '07). IEEE, pp. 252-264,
DOI=http://dx.doi.org/10.1109/CSMR.2007.44.
Steele, G. L. 1990. Common Lisp: The Language. Digital
Press, second edition.
Taha, W. 2004. A gentle introduction to multi-stage
programming. In Proceedings of Domain-Specific
Program Generation, Springer LNCS 3016, pp. 30-50.
DOI=http://dx.doi.org/10.1007/978-3-540-25935-0_3.
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
520