TU Darmstadt / ULB / TUbiblio

An Overview of ALIA4J: An Execution Model for Advanced-Dispatching Languages

Bockisch, Christoph ; Sewe, Andreas ; Mezini, Mira ; Akşit, Mehmet
Hrsg.: Bishop, Judith ; Vallecillo, Antonio (2011)
An Overview of ALIA4J: An Execution Model for Advanced-Dispatching Languages.
In: Objects, Models, Components, Patterns
doi: 10.1007/978-3-642-21952-8_11
Buchkapitel, Bibliographie

Kurzbeschreibung (Abstract)

New programming languages that allow to reduce the complexity of software solutions are frequently developed, often as extensions of existing languages. Many implementations thus resort to transforming the extension’s source code to the imperative intermediate representation of the parent language. But approaches like compiler frameworks only allow for re-use of code transformations for syntactically-related languages; they do not allow for re-use across language families. In this paper, we present the ALIA4J approach to bring such re-use to language families with advanced dispatching mechanisms like pointcut-advice or predicate dispatching. ALIA4J introduces a meta-model of dispatching as a rich, extensible intermediate language. By implementing language constructs from four languages as refinements of this meta-model, we show that a significant amount of them can be re-used across language families. Another building block of ALIA4J is a framework for execution environments that automatically derives an execution model of the program’s dispatching from representations in our intermediate language. This model enables different execution strategies for dispatching; we have validated this by implementing three execution environments whose strategies range from interpretation to optimizing code generation.

Typ des Eintrags: Buchkapitel
Erschienen: 2011
Herausgeber: Bishop, Judith ; Vallecillo, Antonio
Autor(en): Bockisch, Christoph ; Sewe, Andreas ; Mezini, Mira ; Akşit, Mehmet
Art des Eintrags: Bibliographie
Titel: An Overview of ALIA4J: An Execution Model for Advanced-Dispatching Languages
Sprache: Englisch
Publikationsjahr: 2011
Verlag: Springer
Buchtitel: Objects, Models, Components, Patterns
Band einer Reihe: 6705
DOI: 10.1007/978-3-642-21952-8_11
Zugehörige Links:
Kurzbeschreibung (Abstract):

New programming languages that allow to reduce the complexity of software solutions are frequently developed, often as extensions of existing languages. Many implementations thus resort to transforming the extension’s source code to the imperative intermediate representation of the parent language. But approaches like compiler frameworks only allow for re-use of code transformations for syntactically-related languages; they do not allow for re-use across language families. In this paper, we present the ALIA4J approach to bring such re-use to language families with advanced dispatching mechanisms like pointcut-advice or predicate dispatching. ALIA4J introduces a meta-model of dispatching as a rich, extensible intermediate language. By implementing language constructs from four languages as refinements of this meta-model, we show that a significant amount of them can be re-used across language families. Another building block of ALIA4J is a framework for execution environments that automatically derives an execution model of the program’s dispatching from representations in our intermediate language. This model enables different execution strategies for dispatching; we have validated this by implementing three execution environments whose strategies range from interpretation to optimizing code generation.

Zusätzliche Informationen:

Part of Lecture Notes in Computer Science, vol 6705

Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik
20 Fachbereich Informatik > Softwaretechnik
LOEWE
LOEWE > LOEWE-Zentren
Zentrale Einrichtungen
LOEWE > LOEWE-Zentren > CASED – Center for Advanced Security Research Darmstadt
Hinterlegungsdatum: 04 Jul 2011 16:00
Letzte Änderung: 09 Mär 2021 14:34
PPN:
Zugehörige Links:
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen