skip to main content
research-article

Experience report: playing the DSL card

Published:20 September 2008Publication History
Skip Abstract Section

Abstract

This paper describes our experience using a functional language, Haskell, to build an embedded, domain-specific language (DSL) for component configuration in large-scale, real-time, embedded systems. Prior to the introduction of the DSL, engineers would describe the steps needed to configure a particular system in a handwritten XML document. In this paper, we outline the application domain, give a brief overview of the DSL that we developed, and provide concrete data to demonstrate its effectiveness. In particular, we show that the DSL has several significant benefits over the original, XML-based approach including reduced code size, increased modularity and scalability, and detection and prevention of common defects. For example, using the DSL, we were able to produce clear and intuitive descriptions of component configurations that were sometimes less than 1/30 of the size of the original XML.

Skip Supplemental Material Section

Supplemental Material

Video

References

  1. Andrew P. Black, Magnus Carlsson, Mark P. Jones, Richard Kieburtz,and Johan Nordlander. Timber: A Programming Language for Real-Time Embedded Systems. Technical Report, OGI School of Science & Engineering, April, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Paul Hudak.Building Domain-Specific Embedded Languages. In ACM Computing Surveys, 28A(4), December, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Johan Nordlander. Reactive Objects and Functional Programming. Ph.D. thesis, Dept. of Computing Science, Chalmers University of Technology, Göteborg, Sweden, 1999.Google ScholarGoogle Scholar
  4. Johan Nordlander, Mark Jones, Magnus Carlsson, Dick Kieburtz, and Andrew Black. Reactive Objects. In Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2002), Arlington, VA, 2002.Google ScholarGoogle Scholar

Index Terms

  1. Experience report: playing the DSL card

    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

    Full Access

    • Published in

      cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 43, Issue 9
      ICFP '08
      September 2008
      399 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/1411203
      Issue’s Table of Contents
      • cover image ACM Conferences
        ICFP '08: Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
        September 2008
        422 pages
        ISBN:9781595939197
        DOI:10.1145/1411204

      Copyright © 2008 ACM

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 20 September 2008

      Check for updates

      Qualifiers

      • research-article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!