skip to main content
10.1145/2427376.2427383acmconferencesArticle/Chapter ViewAbstractPublication PagesmodevvaConference Proceedingsconference-collections
research-article

Implementing modular domain specific languages and analyses

Published:01 October 2012Publication History

ABSTRACT

Domain specific languages allow users to directly express domain concepts in their programs and thereby eliminate the accidental complexity resulting from implementation details irrelevant to the domain. Cleaner programs, written in DSLs are much easier to analyze formally. However, domain specific analyses need to be implemented over and over again for each new domain specific language. In this paper we show that the use of language engineering techniques for modularizing languages can drastically improve on this situation. Language fragments (aka. language modules) together with a set of analyses defined for them can be reused between different DSLs, making the implementation of analyses significantly easier. This paper presents our approach for using the Meta-Programming System to implement domain specific languages and analyses both as extensions of C and in the domain of intelligent buildings. The main lesson learned is that modularization at language and analysis level allows rapid instantiation of advanced DSLs and their corresponding analyses.

References

  1. G. Edwards, Y. Brun, and N. Medvidovic. Automated analysis and code generation for domain-specific models. In WICSA/ECSA, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Erdweg, P. G. Giarrusso, and T. Rendel. Language composition untangled. In Proceedings of LDTA, 2012. to appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. E. Evans. Domain-driven design: tackling complexity in the heart of software. Addison-Wesley, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. R. Janicki, D. L. Parnas, and J. Zucker. Tabular representations in relational documents, pages 184--196. Springer-Verlag New York, Inc., 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. D. Koss, F. Sellmayr, S. Bauereiss, D. Bytschkow, P. Gupta, and B. Schätz. Stablishing a smart grid node architecture and demonstrator in an office environment using the soa approach. In First International ICSE Workshop on Software Engineering Challenges for the Smart Grid. I, 2012.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. J. Merilinna and J. Pärssinen. Verification and validation in the context of domain-specific modelling. In Proceedings of DSM, DSM '10. ACM, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Mernik, J. Heering, and A. M. Sloane. When and how to develop domain-specific languages. ACM Computing Surveys, 37(4):316--344, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. R. Phillip James. Designing domain specific languages for verification: First steps. In ATE, 2011.Google ScholarGoogle Scholar
  9. M. Voelter. Language and ide modularization, extension and composition with mps. In Summer School GTTSE, 2011.Google ScholarGoogle Scholar
  10. M. Voelter, D. Ratiu, B. Schaetz, and B. Kolb. mbeddr: an Extensible C-based Programming Language and IDE for Embedded Systems. In Proceedings of SPLASH Wavefront 2012, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Implementing modular domain specific languages and analyses

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          MoDeVVa '12: Proceedings of the Workshop on Model-Driven Engineering, Verification and Validation
          October 2012
          51 pages
          ISBN:9781450318013
          DOI:10.1145/2427376

          Copyright © 2012 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 October 2012

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader