Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1066677.1066998acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
Article

Rapidly prototyping implementation infrastructure of domain specific languages: a semantics-based approach

Published: 13 March 2005 Publication History

Abstract

Domain Specific Languages (DSLs) are high level languages designed for solving problems in a particular domain, and have been suggested as means for developing reliable software systems. However, designing of a domain specific language is a difficult task. The design of a domain specific language will evolve as it is used more and more and experienced is gained by its designers. Being able to rapidly develop the implementation infrastructure (interpreter, compiler, debugger, profiler, etc.) of a domain specific language is thus of utmost importance so that as the language evolves, the implementation infrastructure can keep pace. In this paper we present a framework for automatically generating interpreters, compilers, debuggers, and profilers from semantic specification of a domain specific language. We illustrate our approach via the SCR language, a language used by the US defense department for developing control systems.

References

[1]
J. Bentley. Little Languages. CACM, 29(8):711--721, 1986.]]
[2]
M.G.J. van den Brand, et al. The ASF+SDF Meta-Environment: a Component-Based Language Development Environment. Compiler Construction 2001, LNCS 2027, Springer-Verlag.]]
[3]
D.F. Brown et al. ACTRESS: an action semantics directed compiler generator. In Proc. 4th Int'l Conf. on Compiler Construction. Springer LNCS 641, pp. 95--109. 1992.]]
[4]
C. Consel. Architecturing Software Using a Methodology for Language Development. In Proc. 10th Int'l Symp. on Prog. Lang. Impl., Logics and Programs, '98, Springer LNCS 1490, pp. 170--194.]]
[5]
W. Codenie, K. De Hondt, P. Steyaert and A. Vercammen. From custom applications to domain-specific frameworks. In Communications of the ACM, Vol. 40, No. 10, pages 70--77, 1997.]]
[6]
S. R. Faulk. State Determination in Hard-Embedded Systems. Ph.D. Thesis, Univ. of NC, Chapel Hill, NC, 1989.]]
[7]
Y. Futamura. Partial Evaluation of Computer Programs: An approach to compiler-compiler. J. Inst. Electronics and Communication Engineers, Japan. 1971.]]
[8]
C. Gunter. Programming Language Semantics. MIT Press. 1992.]]
[9]
G. Gupta, E. Pontelli, R. Felix-Cardenas, A. Lara, Automatic Derivation of a Provably Correct Parallelizing Compiler, In Proceedings of International Conference on Parallel Processing, IEEE Press, Aug, 1998, pp. 579--586.]]
[10]
G. Gupta. Horn Logic Denotations and Their Applications, The Logic Programming Paradigm: A 25 year perspective. Springer LNAI. 1999:127--160.]]
[11]
C. Heitmeyer, A. Bull, C. Gasarch, and Bruce G. Labaw. SCR*: A toolset for specifying and analyzing requirements. Proc. 10th Computer Assurance Conf.(COMPASS'95), Gaithersburg, MD, June 1995.]]
[12]
C. Heitmeyer, J. Kirby, Jr., et al. Using abstraction and model checking to detect safety violations in requirements specifications. IEEE Transactions on Software Engineering, 24(11):927--948, November 1998.]]
[13]
K. L. Henninger. Specifying software requirements for complex systems: New techniques and their application. IEEE Trans. on Software Engineering. SE-6, 1. pp. 2--13, January 1980.]]
[14]
P. Hudak. Modular Domain Specific Languages and Tools. In IEEE Software Reuse Conf. 2000.]]
[15]
N. Jones. Introduction to Partial Evaluation. In ACM Computing Surveys. 28(3):480--503, September 1996.]]
[16]
P. Lee. Realistic Compiler Generation. The MIT Press, Cambridge, MA, 1989.]]
[17]
E. I. Leonard and C. L. Heitmeyer. Program Synthesis from Requirements Specifications Using APTS. Kluwer Academic Publishers, 2002.]]
[18]
N. G. Leveson, M. P. E. Heimdahl, and J. D. Reese. Designing Specification Languages for Process Control Systems: Lessons Learned and Steps to the Future. In Software Engineering - ESEC/FSE, Springer Verlag, pages 127--145, 1999.]]
[19]
Sheng Liang. Modular Monadic Semantics and Compilation, Ph.D. Thesis, Yale University, 1997.]]
[20]
K. Marriott and P. Stuckey. Constraint Programming. MIT Press, 1998.]]
[21]
S. P. Miller. Specifying the model Logic of a Flight Guidance Systems in CoRE and SCR. Pages:44--53 Series Proceeding Article, 1998]]
[22]
P.D. Mosses. Compiler Generation using Denotational Semantics. In Math. Foundations of CS, Springer LNCS 45, pages 436--441, 1976.]]
[23]
R. Paige. Viewing a Program Transformation System at Work. Proc. Programming Language Implementation and Logic Programming, Springer, LNCS 844. 1994.]]
[24]
E. Pontelli, D. Ranjan, G. Gupta, B. Milligan. ΦLog: A Language for Programming Phylogenetic Inference Problems. Proc. First IEEE Computer Society Bioinformatics Int'l Conf., 2002. pp. 1--10.]]
[25]
C. Pusch. Verification of Compiler Correctness for the WAM. Proc 9th International Conference on Theorem Proving in Higher Order Logics (TPHOL'96). Springer-Verlag LNCS 1125, 1996.]]
[26]
C. Ramming. Proc. Usenix Conf. on Domain-Specific Languages. Usenix, 1997.]]
[27]
D. Sahlin. An Automatic Partial Evaluator for Full Prolog. Ph.D. Thesis. 1994. Royal Institute of Tech., Sweden. (available at www.sics.se)]]
[28]
D. Schmidt. Denotational Semantics: a Methodology for Language Development. W.C. Brown Publishers, 1986.]]
[29]
S. Stepney. High Integrity Compilation. Prentice Hall. 1993.]]
[30]
L. Sterling & S. Shapiro. The Art of Prolog. MIT Press, '94.]]
[31]
M. Wand. Semantics-directed Machine Architecture. In ACM POPL. pp. 234--241. 1982]]
[32]
Q. Wang, G. Gupta. Towards Provably Correct Code Generation via Horn Logical Continuation Semantics. Seventh International Symposium on Practical Aspects of Declarative Languages(PADL05) Long Beach, California, January, 2005.]]
[33]
Eelco Visser. Program Transformation with Stratego/XT: Rules, Strategies, Tools, and Systems in StrategoXT-0.9. Domain-Specific Program Generation, LNCS, Springer-Verlag, Nov. 2003.]]
[34]
V. L. Winter. Program Transformation in HATS. Software Transformation Systems Workshop, '99.]]
[35]
V. Winter et al. Bay Area Rapid Transit District Advance Automated Train Control System: Case Study Description. In High Integrity Software, V. Winter and S. Bhattacharya (eds), April 2001, Kluwer Academic.]]

Cited By

View all
  • (2024)Supporting meta-model-based language evolution and rapid prototyping with automated grammar transformationJournal of Systems and Software10.1016/j.jss.2024.112069214(112069)Online publication date: Aug-2024
  • (2016)Object-oriented design pattern for DSL program monitoringProceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering10.1145/2997364.2997373(70-83)Online publication date: 20-Oct-2016
  • (2013)Denotational Semantics of A User-Oriented, Domain-Specific LanguageElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.129.14129(229-249)Online publication date: 19-Sep-2013
  • Show More Cited By

Index Terms

  1. Rapidly prototyping implementation infrastructure of domain specific languages: a semantics-based approach

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SAC '05: Proceedings of the 2005 ACM symposium on Applied computing
    March 2005
    1814 pages
    ISBN:1581139640
    DOI:10.1145/1066677
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 13 March 2005

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. domain specific languages
    2. horn logical semantics
    3. interpreter
    4. semantics

    Qualifiers

    • Article

    Conference

    SAC05
    Sponsor:
    SAC05: The 2005 ACM Symposium on Applied Computing
    March 13 - 17, 2005
    New Mexico, Santa Fe

    Acceptance Rates

    Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 13 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Supporting meta-model-based language evolution and rapid prototyping with automated grammar transformationJournal of Systems and Software10.1016/j.jss.2024.112069214(112069)Online publication date: Aug-2024
    • (2016)Object-oriented design pattern for DSL program monitoringProceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering10.1145/2997364.2997373(70-83)Online publication date: 20-Oct-2016
    • (2013)Denotational Semantics of A User-Oriented, Domain-Specific LanguageElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.129.14129(229-249)Online publication date: 19-Sep-2013
    • (2009)An approach for the systematic development of domain‐specific languagesSoftware: Practice and Experience10.1002/spe.93639:15(1253-1292)Online publication date: 28-Aug-2009

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media