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

Christoph Bockisch, Andreas Sewe, Mira Mezini, Mehmet Aksit

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

    4 Citations (Scopus)
    119 Downloads (Pure)

    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.
    Original languageUndefined
    Title of host publicationProceedings of the 49th International Conference on Objects, Models, Components, Patterns (TOOLS Europe 2011)
    EditorsJudith Bishop, Antonio Vallecillo
    Place of PublicationBerlin
    PublisherSpringer
    Pages131-146
    Number of pages16
    ISBN (Print)978-3-642-21951-1
    DOIs
    Publication statusPublished - Jun 2011

    Publication series

    NameLecture Notes In Computer Science
    PublisherSpringer Verlag
    Volume6705
    ISSN (Print)0302-9743
    ISSN (Electronic)1611-3349

    Keywords

    • METIS-286286
    • Aspect Oriented Programming
    • Advanced dispatching
    • language implementation
    • CR-D.3
    • EWI-21621
    • predicate dispatching
    • IR-79900

    Cite this

    Bockisch, C., Sewe, A., Mezini, M., & Aksit, M. (2011). An Overview of ALIA4J: An Execution Model for Advanced-Dispatching Languages. In J. Bishop, & A. Vallecillo (Eds.), Proceedings of the 49th International Conference on Objects, Models, Components, Patterns (TOOLS Europe 2011) (pp. 131-146). (Lecture Notes In Computer Science; Vol. 6705). Berlin: Springer. https://doi.org/10.1007/978-3-642-21952-8_11