A mixin-based, semantics-based approach to reusing domain-specific programming languages

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

8 Scopus citations

Abstract

Domain-specific programming languages (DSLs) are emerging as an important paradigm for the engineering of large reliable software systems. Modular interpreters are an approach to building off-the-shelf software components that implement fragments of DSLs.We describe an approach to implementing modular interpreters in an object-oriented fashion, using the design pattern of extensible computations. The modular structuring and reuse of DSL implementations has potentially important lessons for object-oriented reuse, because of the highly recursive nature of any non-trivial programming language, and the close semantic relationship between inheritance and recursion.We give paradigmatic examples of the definition of extensible computations in the Java programming language, and consider what extensions would be required for typed object-oriented languages in order to support this approach in a statically type-safe manner.

Original languageEnglish
Title of host publicationECOOP 2000 - Object-Oriented Programming - 14th European Conference, Proceedings
EditorsElisa Bertino
Pages179-200
Number of pages22
DOIs
StatePublished - 2000
Event14th European Conference on Object-Oriented Programming, ECOOP 2000 - Sophia Antipolis, Cannes, France
Duration: 12 Jun 200016 Jun 2000

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume1850
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference14th European Conference on Object-Oriented Programming, ECOOP 2000
Country/TerritoryFrance
CitySophia Antipolis, Cannes
Period12/06/0016/06/00

Keywords

  • Domain-specific programming languages
  • Java
  • Mixin-based inheritance
  • Modular interpreters
  • Monads

Fingerprint

Dive into the research topics of 'A mixin-based, semantics-based approach to reusing domain-specific programming languages'. Together they form a unique fingerprint.

Cite this