Skip to main content
Erschienen in: Software Quality Journal 2/2018

03.01.2017

Semantic languages for developing correct language translations

verfasst von: Bruno Barroca, Vasco Amaral, Didier Buchs

Erschienen in: Software Quality Journal | Ausgabe 2/2018

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

The development and validation of language translators (e.g. port programs, language preprocessors, high-level software language compilers, etc.) are time-consuming and error-prone: language engineers need to master both the source and target languages’ syntactic constructs; and most importantly their semantics. In this paper, we present an innovative approach for developing and validating such language translators based on two languages: With the first, we specify a language translation using a syntax-to-syntax mapping; and with the second, we define the semantics of both of the source and target languages. After showing how such specifications can be combined to validate and generate language translators automatically, we demonstrate the feasibility of the approach on a particular modelling language translation.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Literatur
Zurück zum Zitat Rahim, L.Ab., & Whittle, J. (2015). A survey of approaches for verifying model transformations. Software and Systems Modeling, 14(2), 1003–1028.CrossRef Rahim, L.Ab., & Whittle, J. (2015). A survey of approaches for verifying model transformations. Software and Systems Modeling, 14(2), 1003–1028.CrossRef
Zurück zum Zitat Anastasakis, K., Bordbar, B., & Küster, J. (2007). Analysis of model transformations via alloy. In Baudry, B., Faivre, A., Ghosh, S., & Pretschner, A. (Eds.) Proceedings of the workshop on model-driven engineering, verification and validation (MoDeVVA 2007), Nashville, TN (USA) (pp. 47–56). Berlin/Heidelberg: Springer. Anastasakis, K., Bordbar, B., & Küster, J. (2007). Analysis of model transformations via alloy. In Baudry, B., Faivre, A., Ghosh, S., & Pretschner, A. (Eds.) Proceedings of the workshop on model-driven engineering, verification and validation (MoDeVVA 2007), Nashville, TN (USA) (pp. 47–56). Berlin/Heidelberg: Springer.
Zurück zum Zitat Andova, S., van den Brand, M.G.J., & Engelen, L. (2012). Reusable and correct endogenous model transformations. In ICMT (pp. 72–88). Andova, S., van den Brand, M.G.J., & Engelen, L. (2012). Reusable and correct endogenous model transformations. In ICMT (pp. 72–88).
Zurück zum Zitat Asztalos, M., Lengyel, L., & Levendovszky, T. (2010). Towards automated, formal verification of model transformations. In ICST 2010: Proceedings of the 3rd international conference on software testing, verification and validation (pp. 15–24). IEEE Computer Society. Asztalos, M., Lengyel, L., & Levendovszky, T. (2010). Towards automated, formal verification of model transformations. In ICST 2010: Proceedings of the 3rd international conference on software testing, verification and validation (pp. 15–24). IEEE Computer Society.
Zurück zum Zitat Barroca, B., & Amaral, V. (2011). Asserting the correctness of translations. In Proceedings of the 6th workshop on multi-paradigm modeling - MODELS 2011. EASST, 10. Barroca, B., & Amaral, V. (2011). Asserting the correctness of translations. In Proceedings of the 6th workshop on multi-paradigm modeling - MODELS 2011. EASST, 10.
Zurück zum Zitat Barroca, B., Lucio, L., Amaral, V., Sousa, V., & Felix, R. (2010). Dsltrans: a turing incomplete transformation language. In Proceedings of the 3rd international conference on software languages engineering - SLE 2010. Springer. Barroca, B., Lucio, L., Amaral, V., Sousa, V., & Felix, R. (2010). Dsltrans: a turing incomplete transformation language. In Proceedings of the 3rd international conference on software languages engineering - SLE 2010. Springer.
Zurück zum Zitat Biermann, E., Ermel, C., & Taentzer, G. (2008). Precise semantics of EMF model transformations by graph transformation. In MODELS’08: Proceedings of ACM/IEEE 11th international conference on MDE languages and systems. Springer. Biermann, E., Ermel, C., & Taentzer, G. (2008). Precise semantics of EMF model transformations by graph transformation. In MODELS’08: Proceedings of ACM/IEEE 11th international conference on MDE languages and systems. Springer.
Zurück zum Zitat Blech, J.O., Glesner, S., & Leitner, J. (2005). Formal verification of java code generation from uml models. In 3rd International Fujaba Days 2005-MDD, in Practice (pp. 49–56). Blech, J.O., Glesner, S., & Leitner, J. (2005). Formal verification of java code generation from uml models. In 3rd International Fujaba Days 2005-MDD, in Practice (pp. 49–56).
Zurück zum Zitat Blech, J.O., & Grégoire, B. (2011). Certifying compilers using higher-order theorem provers as certificate checkers. Formal Methods in System Design, 38(1), 33–61. Blech, J.O., & Grégoire, B. (2011). Certifying compilers using higher-order theorem provers as certificate checkers. Formal Methods in System Design, 38(1), 33–61.
Zurück zum Zitat Büttner, F., Egea, M., Cabot, J., & Gogolla, M. (2012). Verification of atl transformations using transformation models and model finders. In Proceedings of the 14th international conference on formal engineering methods: Formal methods and software engineering, ICFEM’12 (pp. 198–213). Berlin, Heidelberg: Springer. Büttner, F., Egea, M., Cabot, J., & Gogolla, M. (2012). Verification of atl transformations using transformation models and model finders. In Proceedings of the 14th international conference on formal engineering methods: Formal methods and software engineering, ICFEM’12 (pp. 198–213). Berlin, Heidelberg: Springer.
Zurück zum Zitat Chlipala, A. (2010). A verified compiler for an impure functional language. In POPL (pp. 93–106). Chlipala, A. (2010). A verified compiler for an impure functional language. In POPL (pp. 93–106).
Zurück zum Zitat de Lara, J., & Vangheluwe, H. (2002). Atom3: a tool for multi-forMalism and meta-modelling. In FASE ’02: Proceedings of the 5th international conference on fundamental approaches to software engineering (pp. 174–188). London, UK: Springer. de Lara, J., & Vangheluwe, H. (2002). Atom3: a tool for multi-forMalism and meta-modelling. In FASE ’02: Proceedings of the 5th international conference on fundamental approaches to software engineering (pp. 174–188). London, UK: Springer.
Zurück zum Zitat Diskin, Z., & Maibaum, T.S.E. (2012). Category theory and model-driven engineering: From formal semantics to design patterns and beyond. In Golas, U., & Soboll, T. (Eds.) ACCAT, volume 93 of EPTCS (pp. 1–21). Diskin, Z., & Maibaum, T.S.E. (2012). Category theory and model-driven engineering: From formal semantics to design patterns and beyond. In Golas, U., & Soboll, T. (Eds.) ACCAT, volume 93 of EPTCS (pp. 1–21).
Zurück zum Zitat Falleri, J., Huchard, M., Lafourcade, M., & Nebut, C. (2008). Metamodel matching for automatic model transformation generation. In Model driven engineering languages and systems, 11th international conference, MoDELS 2008, Toulouse, France, September 28–October 3, 2008. Proceedings, volume 5301 of Lecture Notes in Computer Science (pp. 326–340). Springer. Falleri, J., Huchard, M., Lafourcade, M., & Nebut, C. (2008). Metamodel matching for automatic model transformation generation. In Model driven engineering languages and systems, 11th international conference, MoDELS 2008, Toulouse, France, September 28–October 3, 2008. Proceedings, volume 5301 of Lecture Notes in Computer Science (pp. 326–340). Springer.
Zurück zum Zitat Hostettler, S., Marechal, A., Linard, A., Risoldi, M., & Buchs, D. (2012). High-level petri net model checking with alpina. Fundamenta Informaticae, 113(3-4), 229–264.MathSciNetMATH Hostettler, S., Marechal, A., Linard, A., Risoldi, M., & Buchs, D. (2012). High-level petri net model checking with alpina. Fundamenta Informaticae, 113(3-4), 229–264.MathSciNetMATH
Zurück zum Zitat Zhang, P., Gross, J.L., & Yellen, J. (2003). Handbook of Graph Theory (Discrete Mathematics and Its Applications), 1st edn. CRC Press. Zhang, P., Gross, J.L., & Yellen, J. (2003). Handbook of Graph Theory (Discrete Mathematics and Its Applications), 1st edn. CRC Press.
Zurück zum Zitat Kleppe, A.G. (2009). Software language engineering: creating domain-specific languages using metamodels. Addison-Wesley. Kleppe, A.G. (2009). Software language engineering: creating domain-specific languages using metamodels. Addison-Wesley.
Zurück zum Zitat Kuster, J.M. (2004). Systematic validation of model transformations. In Essentials of the 3rd UML workshop in software model engineering (WiSME2004). Kuster, J.M. (2004). Systematic validation of model transformations. In Essentials of the 3rd UML workshop in software model engineering (WiSME2004).
Zurück zum Zitat Lano, K., Clark, T., & Rahimi, S.K. (2015). A framework for model transformation verification. Formal Aspects of Computing, 27(1), 193–235.MathSciNetCrossRefMATH Lano, K., Clark, T., & Rahimi, S.K. (2015). A framework for model transformation verification. Formal Aspects of Computing, 27(1), 193–235.MathSciNetCrossRefMATH
Zurück zum Zitat Lucio, L., Barroca, B., & Amaral, V. (2010). A technique for automatic validation of model transformations. In ACM/IEEE MoDELS 2010. Springer, 10. Lucio, L., Barroca, B., & Amaral, V. (2010). A technique for automatic validation of model transformations. In ACM/IEEE MoDELS 2010. Springer, 10.
Zurück zum Zitat Marques, E., Balegas, V., Barroca, B., Amaral, V., & Barisic, A. (2012). The RPG DSL: a case study of language engineering using MDD for generating RPG games for mobile phones. In Proceedings of the 12th workshop on domain-specific modeling at OOPSLA/SPLASH. ACM Digital Library, 10. Marques, E., Balegas, V., Barroca, B., Amaral, V., & Barisic, A. (2012). The RPG DSL: a case study of language engineering using MDD for generating RPG games for mobile phones. In Proceedings of the 12th workshop on domain-specific modeling at OOPSLA/SPLASH. ACM Digital Library, 10.
Zurück zum Zitat Mustafiz, S., Denil, J., Lúcio, L., & Vangheluwe, H. (2012). The ftg+pm framework for multi-paradigm modelling: an automotive case study. In Proceedings of the 6th international workshop on multi-paradigm modeling, MPM ’12 (pp. 13–18). New York, NY, USA: ACM. Mustafiz, S., Denil, J., Lúcio, L., & Vangheluwe, H. (2012). The ftg+pm framework for multi-paradigm modelling: an automotive case study. In Proceedings of the 6th international workshop on multi-paradigm modeling, MPM ’12 (pp. 13–18). New York, NY, USA: ACM.
Zurück zum Zitat Narayanan, A., & Karsai, G. (2008). Verifying model transformations by structural correspondence. ECEASST, 10. Narayanan, A., & Karsai, G. (2008). Verifying model transformations by structural correspondence. ECEASST, 10.
Zurück zum Zitat Park, D. (1981). Concurrency and automata on infinite sequences. In Proceedings of the 5th GI-conference on theoretical computer science (pp. 167–183). London, UK: Springer. Park, D. (1981). Concurrency and automata on infinite sequences. In Proceedings of the 5th GI-conference on theoretical computer science (pp. 167–183). London, UK: Springer.
Zurück zum Zitat Plotkin, G.D. (2004). A structural approach to operational semantics. The Journal of Logic and Algebraic Programming, 60-61, 17–139. Plotkin, G.D. (2004). A structural approach to operational semantics. The Journal of Logic and Algebraic Programming, 60-61, 17–139.
Zurück zum Zitat Pnueli, A., Siegel, M., & Singerman, F. (1998). Translation validation, (pp. 151–166). Springer. Pnueli, A., Siegel, M., & Singerman, F. (1998). Translation validation, (pp. 151–166). Springer.
Zurück zum Zitat Stenzel, K., Moebius, N., & Reif, W. (2015). Formal verification of qvt transformations for code generation. Software and Systems Modeling, 14(2), 981–1002.CrossRef Stenzel, K., Moebius, N., & Reif, W. (2015). Formal verification of qvt transformations for code generation. Software and Systems Modeling, 14(2), 981–1002.CrossRef
Zurück zum Zitat van Bakel, S., & Vigliotti, M. (2009). A logical interpretation of the lambda-calculus into the pi-calculus, preserving spine reduction and types. In CONCUR 2009 - concurrency theory - lecture notes in computer science, (Vol. 5710 pp. 84–98). Berlin/Heidelberg: Springer. van Bakel, S., & Vigliotti, M. (2009). A logical interpretation of the lambda-calculus into the pi-calculus, preserving spine reduction and types. In CONCUR 2009 - concurrency theory - lecture notes in computer science, (Vol. 5710 pp. 84–98). Berlin/Heidelberg: Springer.
Zurück zum Zitat Varró, D., & Pataricza, A. (2003). Automated formal verification of model transformations. In CSDUML 2003: Critical systems development in UML; Proceedings of the UML’03 workshop, number TUM-I0323 in Technical Report (pp. 63–78). Technische Universität München. Varró, D., & Pataricza, A. (2003). Automated formal verification of model transformations. In CSDUML 2003: Critical systems development in UML; Proceedings of the UML’03 workshop, number TUM-I0323 in Technical Report (pp. 63–78). Technische Universität München.
Zurück zum Zitat Yang, X., Chen, Y., Eide, E., & Regehr, J. (2011). Finding and understanding bugs in c compilers. SIGPLAN Notices, 46(6), 283–294.CrossRef Yang, X., Chen, Y., Eide, E., & Regehr, J. (2011). Finding and understanding bugs in c compilers. SIGPLAN Notices, 46(6), 283–294.CrossRef
Metadaten
Titel
Semantic languages for developing correct language translations
verfasst von
Bruno Barroca
Vasco Amaral
Didier Buchs
Publikationsdatum
03.01.2017
Verlag
Springer US
Erschienen in
Software Quality Journal / Ausgabe 2/2018
Print ISSN: 0963-9314
Elektronische ISSN: 1573-1367
DOI
https://doi.org/10.1007/s11219-016-9352-4

Weitere Artikel der Ausgabe 2/2018

Software Quality Journal 2/2018 Zur Ausgabe