Reusable Textual Notations for Domain-Specific Languages
2019
Abstract
Domain-specific languages enable concise and precise formalization of domain concepts and promote direct employment by domain experts. Therefore, syntactic constructs are introduced to empower users to associate concepts and relationships with visual textual symbols. Model-based language engineering facilitates the description of concepts and relationships in an abstract manner. However, concrete representations are commonly attached to abstract domain representations, such as annotations in metamodels, or directly encoded into language grammar and thus introduce redundancy betweenmetamodel elements and grammar elements. In this work we propose an approach that enables autonomous development and maintenance of domain concepts and textual language notations in a distinctive and metamodel-agnostic manner by employing style models containing grammar rule templates and injection-based property selection. We provide an implementation and showcase the proposed notationspecification langua...
References (28)
- Adams, M.D.: Principled parsing for indentation-sensitive languages: revisiting landin's off- side rule. In: The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Pro- gramming Languages, POPL '13, Rome, Italy -January 23 -25, 2013. pp. 511-522 (2013)
- Alanen, M., Porres, I.: A Relation Between Context-Free Grammars and Meta Object Facility Metamodels. Tech. rep., Turku Centre for Computer Science (2003)
- Ben-Kiki, O., Evans, C., Ingerson, B.: YAML Ain't Markup Language (YAML™) Version 1.1 (2009)
- Brucker, A.D., Cabot, J., Daniel, G., Gogolla, M., Herrera, A.S., Hilken, F., Tuong, F., Willink, E.D., Wolff, B.: Recent developments in OCL and textual modelling. In: Proceedings of the 16th International Workshop on OCL and Textual Modelling co-located with 19th Interna- tional Conference on Model Driven Engineering Languages and Systems (MODELS 2016), Saint-Malo, France, October 2, 2016. pp. 157-165 (2016)
- Eysholdt, M., Behrens, H.: Xtext: implement your language faster than the quick and dirty way. In: Companion to the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, SPLASH/OOPSLA 2010, October 17- 21, 2010, Reno/Tahoe, Nevada, USA. pp. 307-309 (2010)
- Fowler, M.: Language workbenches: The killer-app for domain specific languages (2005), http://www.martinfowler.com/articles/languageWorkbench.html
- Fowler, M.: Domain-specific languages. Pearson Education (2010)
- Goldschmidt, T., Becker, S., Uhl, A.: Classification of concrete textual syntax mapping ap- proaches. In: Model Driven Architecture -Foundations and Applications, 4th European Conference, ECMDA-FA 2008, Berlin, Germany, June 9-13, 2008. Proceedings. pp. 169-184 (2008)
- Heidenreich, F., Johannes, J., Karol, S., Seifert, M., Wende, C.: Derivation and refinement of textual syntax for models. In: Model Driven Architecture -Foundations and Applications, 5th European Conference, ECMDA-FA 2009, Enschede, The Netherlands, June 23-26, 2009. Proceedings. pp. 114-129 (2009)
- Heidenreich, F., Johannes, J., Karol, S., Seifert, M., Wende, C.: Model-based language en- gineering with emftext. In: Generative and Transformational Techniques in Software En- gineering IV, International Summer School, GTTSE 2011, Braga, Portugal, July 3-9, 2011. Revised Papers. pp. 322-345 (2011)
- Herrera, A.S., Willink, E.D., Paige, R.F.: A domain specific transformation language to bridge concrete and abstract syntax. In: Theory and Practice of Model Transformations -9th Inter- national Conference, ICMT 2016, Held as Part of STAF 2016, Vienna, Austria, July 4-5, 2016, Proceedings. pp. 3-18 (2016)
- Jouault, F., Bézivin, J., Kurtev, I.: TCS: a DSL for the specification of textual concrete syntaxes in model engineering. In: Generative Programming and Component Engineering, 5th Inter- national Conference, GPCE 2006, Portland, Oregon, USA, October 22-26, 2006, Proceedings. pp. 249-254 (2006)
- Kats, L.C.L., Visser, E.: The spoofax language workbench: rules for declarative specifica- tion of languages and ides. In: Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2010, October 17-21, 2010, Reno/Tahoe, Nevada, USA. pp. 444-463 (2010)
- Kleppe, A.: Software Language Engineering: Creating Domain-Specific Languages using Metamodels. Pearson Education (2008)
- Klint, P., Lämmel, R., Verhoef, C.: Toward an engineering discipline for grammarware. ACM Trans. Softw. Eng. Methodol. 14(3), 331-380 (2005)
- Kühne, T.: What is a model? In: Language Engineering for Model-Driven Software Devel- opment (2004)
- Kurtev, I., Aksit, M., Bézivin, J.: Technical Spaces: An Initial Appraisal. In: Proc. of CoopIS (2002)
- Landin, P.J.: The next 700 programming languages. Commun. ACM 9(3), 157-166 (1966)
- Muller, P.A., Fondement, F., Baudry, B.: Concrete Syntax Definition For Modeling Lan- guages. Ph.D. thesis, École Polytechnique Fédérale De Lausanne (2007)
- Object Management Group (OMG): Meta Object Facility (MOF), Version 2.5.1 (2016), http: //
- Paige, R.F., Kolovos, D.S., Polack, F.A.C.: Metamodelling for grammarware researchers. In: Software Language Engineering, 5th International Conference, SLE 2012, Dresden, Ger- many, September 26-28, 2012, Revised Selected Papers. pp. 64-82 (2012)
- Paige, R.F., Kolovos, D.S., Polack, F.A.C.: A tutorial on metamodelling for grammar re- searchers. Sci. Comput. Program. 96, 396-416 (2014)
- Parr, T.: The definitive ANTLR 4 reference. Pragmatic Bookshelf (2013)
- Scheidgen, M.: Textual modelling embedded into graphical modelling. In: Model Driven Architecture -Foundations and Applications, 4th European Conference, ECMDA-FA 2008, Berlin, Germany, June 9-13, 2008. Proceedings. pp. 153-168 (2008)
- Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework 2.0. Addison-Wesley Professional, 2nd edn. (2009)
- Wimmer, M., Kramler, G.: Bridging grammarware and modelware. In: Satellite Events at the MoDELS 2005 Conference, MoDELS 2005 International Workshops, Doctoral Symposium, Educators Symposium, Montego Bay, Jamaica, October 2-7, 2005, Revised Selected Papers. pp. 159-168 (2005)
- Wirth, N.: Extended Backus-Naur form (EBNF). ISO/IEC 14977, 2996 (1996)
- Zschaler, S., Kolovos, D.S., Drivalos, N., Paige, R.F., Rashid, A.: Domain-specific metamod- elling languages for software language engineering. In: Software Language Engineering, Second International Conference, SLE 2009, Denver, CO, USA, October 5-6, 2009, Revised Selected Papers. pp. 334-353 (2009)