{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,16]],"date-time":"2025-11-16T06:24:06Z","timestamp":1763274246871,"version":"3.40.3"},"publisher-location":"Cham","reference-count":57,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030737573"},{"type":"electronic","value":"9783030737580"}],"license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"DOI":"10.1007\/978-3-030-73758-0_11","type":"book-chapter","created":{"date-parts":[[2021,11,29]],"date-time":"2021-11-29T15:10:49Z","timestamp":1638198649000},"page":"315-336","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["Teaching Language Engineering Using MPS"],"prefix":"10.1007","author":[{"given":"Andreas","family":"Prinz","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,4,15]]},"reference":[{"key":"11_CR1","volume-title":"Compilers: Principles, Techniques, and Tools","author":"AV Aho","year":"1986","unstructured":"Aho, A.V., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools. Addison-Wesley Longman Publishing Co., Inc., Boston, MA (1986)"},{"issue":"7","key":"11_CR2","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1145\/381841.381847","volume":"31","author":"A Aiken","year":"1996","unstructured":"Aiken, A.: Cool: a portable project for teaching compiler construction. SIGPLAN Not. 31(7), 19\u201324 (1996). https:\/\/doi.org\/10.1145\/381841.381847","journal-title":"SIGPLAN Not."},{"key":"11_CR3","doi-asserted-by":"crossref","unstructured":"Atkinson, C., K\u00fchne, T.: Model-driven development: a metamodeling foundation. In: Software, IEEE (2003)","DOI":"10.1109\/MS.2003.1231149"},{"key":"11_CR4","unstructured":"Bennedsen, J., Caspersen, M.E.: Model-Driven Programming, pp. 116\u2013129. Springer, Berlin, Heidelberg (2008). http:\/\/link.springer.com\/book\/10.1007%2F978-3-540-77934-60"},{"key":"11_CR5","volume-title":"Implementing Domain-Specific Languages with Xtext and Xtend","author":"L Bettini","year":"2013","unstructured":"Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing, Birmingham (2013)"},{"key":"11_CR6","unstructured":"B\u00e9zivin, J., Gerb\u00e9, O.: Towards a precise definition of the OMG\/MDA framework. In: Proceedings of ASE\u201901, Automated Software Engineering (2001)"},{"key":"11_CR7","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-18216-7","volume-title":"Abstract state machines: a method for high-level system design and analysis","author":"E B\u00f6rger","year":"2003","unstructured":"B\u00f6rger, E., St\u00e4rk, R.F.: Abstract state machines: a method for high-level system design and analysis. Springer-Verlag New York, Inc., Secaucus, NJ (2003)"},{"key":"11_CR8","unstructured":"Clark, T., Sammut, P., Willans, J.S.: Applied Metamodelling: a Foundation for Language Driven Development, 3rd edn. (2015). CoRR abs\/1505.00149. http:\/\/arxiv.org\/abs\/1505.00149"},{"key":"11_CR9","unstructured":"Dai, N., Mandel, L., Ryman, A.: Eclipse Web Tools Platform: Developing Java Web Applications. Eclipse Series. Addison-Wesley, Boston (2007)"},{"key":"11_CR10","unstructured":"Dmitriev, S.: Language oriented programming: the next programming paradigm. JetBrains onBoard 1(2) (2004)"},{"key":"11_CR11","volume-title":"Fundamentals of Algebraic Specification 1: Equations and Initial Semantics","author":"H Ehrig","year":"2011","unstructured":"Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification 1: Equations and Initial Semantics, 1st edn. Springer Publishing Company, Incorporated, Berlin, Heidelberg (2011)","edition":"1"},{"key":"11_CR12","first-page":"446","volume-title":"Generative and Transformational Techniques in Software Engineering (GTTSE2009). Revised Papers. Lecture Notes in Computer Science","author":"T Gj\u00f8s\u00e6ter","year":"2009","unstructured":"Gj\u00f8s\u00e6ter, T., Prinz, A.: Teaching computer language handling - from compiler theory to meta-modelling. In: Fernandes, J.M. , L\u00e4mmel, R., Visser, J., Saraiva, J. (eds.) Generative and Transformational Techniques in Software Engineering (GTTSE2009). Revised Papers. Lecture Notes in Computer Science, vol. 6491, pp. 446\u2013460. Springer, New York (2009). https:\/\/doi.org\/10.1007\/978-3-642-18023-1_14"},{"key":"11_CR13","doi-asserted-by":"publisher","unstructured":"Gj\u00f8s\u00e6ter, T., Prinz, A.: Teaching model driven language handling. ECEASST 34 (2010). https:\/\/doi.org\/10.14279\/tuj.eceasst.34.591","DOI":"10.14279\/tuj.eceasst.34.591"},{"key":"11_CR14","unstructured":"Gj\u00f8s\u00e6ter, T., Prinz, A.: Languagelab 1.1 user manual. Tech. rep., University of Agder (2013). http:\/\/brage.bibsys.no\/xmlui\/handle\/11250\/134943"},{"key":"11_CR15","first-page":"305","volume-title":"Software Language Engineering (SLE2008). Revised Selected Papers. Lecture Notes in Computer Science","author":"T Gj\u00f8s\u00e6ter","year":"2008","unstructured":"Gj\u00f8s\u00e6ter, T., Isfeldt, I.F., Prinz, A.: Sudoku - a language description case study. In: Gasevic, D., L\u00e4mmel, R., Wyk, E.V. (eds.) Software Language Engineering (SLE2008). Revised Selected Papers. Lecture Notes in Computer Science, vol. 5452, pp. 305\u2013321. Springer, New York (2008). https:\/\/doi.org\/10.1007\/978-3-642-00434-6_19"},{"key":"11_CR16","doi-asserted-by":"crossref","unstructured":"Gj\u00f8s\u00e6ter, T., Prinz, A., Nytun, J.P.: MOF-VM: instantiation revisited. In: Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development, pp. 137\u2013144 (2016). https:\/\/doi.org\/10.5220\/0005606101370144","DOI":"10.5220\/0005606101370144"},{"issue":"3","key":"11_CR17","doi-asserted-by":"publisher","first-page":"343","DOI":"10.1016\/S1389-1286(03)00247-0","volume":"42","author":"U Gl\u00e4sser","year":"2003","unstructured":"Gl\u00e4sser, U., Gotzhein, R., Prinz, A.: The formal semantics of SDL-2000: status and perspectives. Comput. Netw. 42(3), 343\u2013358 (2003). https:\/\/doi.org\/10.1016\/S1389-1286(03)00247-0","journal-title":"Comput. Netw."},{"key":"11_CR18","unstructured":"Gosling, J., Joy, B., Steele, G., Bracha, G.: Java Language Specification. The Java Series, 2nd edn. Addison-Wesley Longman Publishing Co., Inc., Boston, MA (2000)"},{"issue":"23","key":"11_CR19","doi-asserted-by":"publisher","first-page":"2760","DOI":"10.1016\/j.ecolmodel.2010.08.019","volume":"221","author":"V Grimm","year":"2010","unstructured":"Grimm, V., Berger, U., DeAngelis, D.L., Polhill, J.G., Giske, J., Railsback, S.F.: The ODD protocol: a review and first update. Ecol. Modell. 221(23), 2760\u20132768 (2010). https:\/\/doi.org\/10.1016\/j.ecolmodel.2010.08.019","journal-title":"Ecol. Modell."},{"key":"11_CR20","doi-asserted-by":"crossref","unstructured":"Grimm, V., Polhill, G., Touza, J.: Documenting social simulation models: The ODD protocol as a standard, pp. 117\u2013133. Springer, Berlin, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-540-93813-2_7","DOI":"10.1007\/978-3-540-93813-2_7"},{"key":"11_CR21","first-page":"515","volume-title":"Proceedings of MODELSWARD 2017","author":"SM Guttormsen","year":"2017","unstructured":"Guttormsen, S.M., Prinz, A., Gj\u00f8s\u00e6ter, T.: Consistent projectional text editors. In: Pires, L.F., Hammoudi, S., Selic, B. (eds.) Proceedings of MODELSWARD 2017, pp. 515\u2013522. SciTePress, Set\u00fabal (2017). https:\/\/doi.org\/10.5220\/0006264505150522"},{"key":"11_CR22","doi-asserted-by":"publisher","first-page":"114","DOI":"10.1007\/978-3-642-02674-4_9","volume-title":"Model Driven Architecture - Foundations and Applications","author":"F Heidenreich","year":"2009","unstructured":"Heidenreich, F., Johannes, J., Karol, S., Seifert, M., Wende, C.: Derivation and refinement of textual syntax for models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) Model Driven Architecture - Foundations and Applications, pp. 114\u2013129. Springer, Berlin Heidelberg (2009)"},{"key":"11_CR23","unstructured":"International Telecommunication Union: Z.100 Series, Specification and Description Language SDL. Tech. rep., International Telecommunication Union (2011)"},{"key":"11_CR24","unstructured":"JetBrains: MPS meta programming system. https:\/\/www.jetbrains.com\/mps\/"},{"key":"11_CR25","volume-title":"Domain-Specific Modeling","author":"S Kelly","year":"2007","unstructured":"Kelly, S., Tolvanen, J.P.: Domain-Specific Modeling. Wiley & Sons, Inc., Hoboken, NJ (2007)"},{"key":"11_CR26","unstructured":"Kleppe, A.: A language description is more than a metamodel (2007). This paper is published through a website (megaplanet.org) only. No paper copy available.; 4th International Workshop on Software Language Engineering, ATEM 2007"},{"key":"11_CR27","volume-title":"MDA Explained","author":"A Kleppe","year":"2003","unstructured":"Kleppe, A., Warmer, J.: MDA Explained. Addison-Wesley, Boston (2003)"},{"key":"11_CR28","doi-asserted-by":"crossref","unstructured":"Klint, P., van der Storm, T., Vinju, J.: Easy meta-programming with Rascal. In: Proceedings of GTTSE\u201909, pp. 222\u2013289. Springer, Berlin, Heidelberg (2011)","DOI":"10.1007\/978-3-642-18023-1_6"},{"key":"11_CR29","doi-asserted-by":"publisher","first-page":"311","DOI":"10.1007\/978-3-642-36089-3_18","volume-title":"Software Language Engineering","author":"G Konat","year":"2013","unstructured":"Konat, G., Kats, L., Wachsmuth, G., Visser, E.: Declarative name binding and scope rules. In: Czarnecki, K., Hedin, G. (eds.) Software Language Engineering, pp. 311\u2013331. Springer, Berlin, Heidelberg (2013)"},{"key":"11_CR30","doi-asserted-by":"crossref","unstructured":"Madsen, O.L., M\u00f8ller-Pedersen, B.: A unified approach to modeling and programming. In: Proceedings of the 13th International Conference on Model Driven Engineering Languages and Systems: Part I, MODELS\u201910, pp. 1\u201315. Springer, Berlin, Heidelberg (2010). http:\/\/dl.acm.org\/citation.cfm?id=1926458.1926460","DOI":"10.1007\/978-3-642-16145-2_1"},{"key":"11_CR31","volume-title":"Executable UML: A Foundation for Model-Driven Architectures","author":"SJ Mellor","year":"2002","unstructured":"Mellor, S.J., Balcer, M.: Executable UML: A Foundation for Model-Driven Architectures. Addison-Wesley Longman Publishing Co., Inc., Boston, MA (2002)"},{"key":"11_CR32","unstructured":"Microsoft: Getting started with domain-specific languages. https:\/\/docs.microsoft.com\/de-de\/visualstudio\/modeling\/about-domain-specific-languages?view=vs-2019"},{"key":"11_CR33","doi-asserted-by":"publisher","first-page":"195","DOI":"10.1016\/j.jlap.2004.03.008","volume":"60","author":"PD Mosses","year":"2004","unstructured":"Mosses, P.D.: Structural operational semantics modular structural operational semantics. J. Log. Algebr. Program. 60, 195\u2013228 (2004). http:\/\/dx.doi.org\/10.1016\/j.jlap.2004.03.008","journal-title":"J. Log. Algebr. Program."},{"key":"11_CR34","doi-asserted-by":"crossref","unstructured":"Mu, L., Gj\u00f8s\u00e6ter, T., Prinz, A., Tveit, M.S.: Specification of modelling languages in a flexible meta-model architecture. In: Software Architecture, 4th European Conference, ECSA 2010, Copenhagen, August 23\u201326, 2010. Companion Volume, pp. 302\u2013308 (2010). https:\/\/doi.org\/10.1145\/1842752.1842807","DOI":"10.1145\/1842752.1842807"},{"key":"11_CR35","first-page":"268","volume-title":"Proceedings of ECMDA-FA 2006. Lecture Notes in Computer Science","author":"JP Nytun","year":"2006","unstructured":"Nytun, J.P., Prinz, A., Tveit, M.S.: Automatic generation of modelling tools. In: Rensink, A., Warmer, J. (eds.) Proceedings of ECMDA-FA 2006. Lecture Notes in Computer Science, vol. 4066, pp. 268\u2013283. Springer, New York (2006). https:\/\/doi.org\/10.1007\/11787044_21"},{"key":"11_CR36","unstructured":"OMG Editor: Meta Object Facility (MOF) 2.0 Query\/View\/Transformation Specification, Version 1.1. Tech. rep., Object Management Group (2011). http:\/\/www.omg.org\/spec\/QVT\/1.1\/"},{"key":"11_CR37","unstructured":"OMG Editor: Unified Modeling Language: Infrastructure version 2.4.1 (OMG Document formal\/2011-08-05). OMG Document. Published by Object Management Group, http:\/\/www.omg.org (2011)"},{"key":"11_CR38","unstructured":"OMG Editor: Meta Object Facility (MOF). Tech. rep., Object Management Group (2016). https:\/\/www.omg.org\/spec\/MOF"},{"key":"11_CR39","doi-asserted-by":"crossref","unstructured":"Pech, V., Shatalin, A., V\u00f6lter, M.: JetBrains MPS as a tool for extending Java. In: Proceedings of the Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, PPPJ \u201913, pp. 165\u2013168. ACM, New York (2013). https:\/\/doi.org\/10.1145\/2500828.2500846","DOI":"10.1145\/2500828.2500846"},{"key":"11_CR40","unstructured":"Plotkin, G.D.: A structural approach to operational semantics. Tech. Rep. DAIMI FN-19, Aarhus University (1981). http:\/\/opac.inria.fr\/record=b1049300"},{"key":"11_CR41","first-page":"182","volume-title":"MODELSWARD 2019, Revised Selected Papers. Communications in Computer and Information Science","author":"A Prinz","year":"2019","unstructured":"Prinz, A., Mezei, G.: The art of bootstrapping. In: Hammoudi, S., Pires, L.F., Selic, B. (eds.) MODELSWARD 2019, Revised Selected Papers. Communications in Computer and Information Science, vol. 1161, pp. 182\u2013200. Springer, New York (2019). https:\/\/doi.org\/10.1007\/978-3-030-37873-8_8"},{"key":"11_CR42","first-page":"345","volume-title":"Proceedings of MODELSWARD 2019","author":"A Prinz","year":"2019","unstructured":"Prinz, A., Shatalin, A.: How to bootstrap a language workbench. In: Hammoudi, S., Pires, L.F., Selic, B. (eds.) Proceedings of MODELSWARD 2019, pp. 345\u2013352. SciTePress, Set\u00fabal (2019). https:\/\/doi.org\/10.5220\/0007398203470354"},{"key":"11_CR43","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/978-3-540-74984-4_1","volume-title":"Proceedings of SDL 2007: Design for Dependable Systems. Lecture Notes in Computer Science","author":"A Prinz","year":"2007","unstructured":"Prinz, A., Scheidgen, M., Tveit, M.S.: A model-based standard for SDL. In: Gaudin, E., Najm, E., Reed, R. (eds.) Proceedings of SDL 2007: Design for Dependable Systems. Lecture Notes in Computer Science, vol. 4745, pp. 1\u201318. Springer, New York (2007). https:\/\/doi.org\/10.1007\/978-3-540-74984-4_1"},{"key":"11_CR44","doi-asserted-by":"crossref","unstructured":"Prinz, A., M\u00f8ller-Pedersen, B., Fischer, J.: Object-oriented operational semantics. In: Proceedings of SAM 2016, LNCS 9959. Springer, Berlin, Heidelberg (2016)","DOI":"10.1007\/978-3-319-46613-2_9"},{"issue":"6","key":"11_CR45","doi-asserted-by":"publisher","first-page":"397","DOI":"10.1016\/j.jlap.2010.03.012","volume":"79","author":"G Ro\u015fu","year":"2010","unstructured":"Ro\u015fu, G., \u015eerb\u0103nu\u0163\u0103, T.F.: An overview of the K semantic framework. J. Log. Algebr. Program. 79(6), 397\u2013434 (2010). https:\/\/doi.org\/10.1016\/j.jlap.2010.03.012","journal-title":"J. Log. Algebr. Program."},{"key":"11_CR46","first-page":"348","volume-title":"Objects, Components, Models and Patterns, TOOLS EUROPE 2009. Proceedings, Lecture Notes in Business Information Processing","author":"DA Sadilek","year":"2009","unstructured":"Sadilek, D.A., Wachsmuth, G.: Using grammarware languages to define operational semantics of modelled languages. In: Oriol, M., Meyer, B. (eds.) Objects, Components, Models and Patterns, TOOLS EUROPE 2009. Proceedings, Lecture Notes in Business Information Processing, vol. 33, pp. 348\u2013356. Springer, New York (2009). https:\/\/doi.org\/10.1007\/978-3-642-02571-6_20"},{"key":"11_CR47","unstructured":"Scheidgen, M.: Textual Editing Framework (2008). Accessed 14 April 2020. http:\/\/www2.informatik.hu-berlin.de\/sam\/meta-tools\/tef\/documentation.html"},{"key":"11_CR48","doi-asserted-by":"crossref","unstructured":"Scheidgen, M., Fischer, J.: Human Comprehensible and Machine Processable Specifications of Operational Semantics, pp. 157\u2013171. Springer, Berlin, Heidelberg (2007). https:\/\/doi.org\/10.1007\/978-3-540-72901-3_12","DOI":"10.1007\/978-3-540-72901-3_12"},{"key":"11_CR49","volume-title":"Programming Languages: Concepts and Constructs","author":"R Sethi","year":"1989","unstructured":"Sethi, R.: Programming Languages: Concepts and Constructs. Addison-Wesley Longman Publishing Co., Inc., Boston (1989)"},{"key":"11_CR50","unstructured":"Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework 2.0, 2nd edn. Addison-Wesley Professional, Boston (2009)"},{"key":"11_CR51","doi-asserted-by":"crossref","unstructured":"\u015eut\u00eei, A.M., van den Brand, M., Verhoeff, T.: Exploration of modularity and reusability of domain-specific languages: an expression DSL in metamod. Comput. Lang. Syst. Struct. 51, 48\u201370 (2018). https:\/\/doi.org\/10.1016\/j.cl.2017.07.004. http:\/\/www.sciencedirect.com\/science\/article\/pii\/S1477842417300404","DOI":"10.1016\/j.cl.2017.07.004"},{"key":"11_CR52","doi-asserted-by":"crossref","unstructured":"Szab\u00f3, T., V\u00f6lter, M., Kolb, B., Ratiu, D., Schaetz, B.: mbeddr: extensible languages for embedded software development. In: Proceedings of the Conference on High Integrity Language Technology, HILT \u201914, pp. 13\u201316. ACM, New York (2014). https:\/\/doi.org\/10.1145\/2663171.2663186","DOI":"10.1145\/2692956.2663186"},{"key":"11_CR53","unstructured":"Voelter, M., Benz, S., Dietrich, C., Engelmann, B., Helander, M., Kats, L.C.L., Visser, E., Wachsmuth, G.: DSL Engineering - Designing, Implementing and Using Domain-Specific Languages. dslbook.org (2013)"},{"issue":"06","key":"11_CR54","doi-asserted-by":"publisher","first-page":"20","DOI":"10.1109\/MS.2011.139","volume":"28","author":"M V\u00f6lter","year":"2011","unstructured":"V\u00f6lter, M.: From programming to modeling - and back again. IEEE Software 28(06), 20\u201325 (2011). http:\/\/dx.doi.org\/10.1109\/MS.2011.139","journal-title":"IEEE Software"},{"key":"11_CR55","doi-asserted-by":"crossref","unstructured":"V\u00f6lter, M., Szab\u00f3, T., Lisson, S., Kolb, B., Erdweg, S., Berger, T.: Efficient development of consistent projectional editors using grammar cells. In: Proceedings of Conference on Software Language Engineering, SLE 2016, pp. 28\u201340. Association for Computing Machinery, New York (2016). https:\/\/doi.org\/10.1145\/2997364.2997365","DOI":"10.1145\/2997364.2997365"},{"key":"11_CR56","volume-title":"The Object Constraint Language: Getting Your Models Ready for MDA","author":"J Warmer","year":"2003","unstructured":"Warmer, J., Kleppe, A.: The Object Constraint Language: Getting Your Models Ready for MDA, 2nd edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2003)","edition":"2"},{"key":"11_CR57","doi-asserted-by":"crossref","unstructured":"Xanthopoulou, T.D., Prinz, A., Shults, F.L.: Generating executable code from high-level social or socio-ecological model descriptions. In: i Casas, P.F., Sancho, M., Sherratt, E. (eds.) System Analysis and Modeling Conference, SAM 2019, Proceedings. Lecture Notes in Computer Science, vol. 11753, pp. 150\u2013162. Springer, New York (2019). https:\/\/doi.org\/10.1007\/978-3-030-30690-8_9","DOI":"10.1007\/978-3-030-30690-8_9"}],"container-title":["Domain-Specific Languages in Practice"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-73758-0_11","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,11,29]],"date-time":"2021-11-29T15:45:15Z","timestamp":1638200715000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-73758-0_11"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030737573","9783030737580"],"references-count":57,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-73758-0_11","relation":{},"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"15 April 2021","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}