Efficient language implementation with ALIA4J and EMFText: forum demonstration

Christoph Bockisch, Andreas Sewe

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

    140 Downloads (Pure)

    Abstract

    Developing extensions to general-purpose langauges or domain-specific languages with support for new kinds of abstractions is an ongoing trend. Modern language workbenches, such as EMFText of Xtext, support this trend and facilitate implementing langauges in terms of transformations from the new language into an established (intermediate) language. Often, however, the implementation of one element in the source language becomes scattered and tangled in the target language, which makes transformations complex. Furthermore, even though many languages share core concepts, current approaches do not support sharing transformations that implement their semantics; the only possibility of re-using transformations from a language is to extend it syntactically. We have identified dispatching as fundamental to most abstraction mechanisms. With the ALIA4J approach, we provide a meta-model of dispatching to act as rich and extensible intermediate language that allows more direct transformation. The semantics of core language concepts can be modularly implemented as extension of the meta-model. For the execution of the intermediate language, we provide both platform-independent and platform-dependent Java Virtual Machine extensions, the latter of which even allows the modular implementation of machine code optimizations. In this demo, participants get an overview of advanced dispatching and the ALIA4J approach. By the example of a language for text-based adventure games, they will see the usage of ALIA4J as back-end for a language developed in EMFText. Finally, the implementation of new atomic language concepts and their optimization is demonstrated.
    Original languageUndefined
    Title of host publicationProceedings of the 12th Annual International Conference Companion on Aspect-Oriented Software Development, AOSD 2013
    Place of PublicationNew York
    PublisherAssociation for Computing Machinery (ACM)
    Pages7-10
    Number of pages4
    ISBN (Print)978-1-4503-1873-0
    DOIs
    Publication statusPublished - Mar 2013
    Event12th Annual International Conference on Aspect-Oriented Software Development, AOSD 2013 - Fukuoka, Japan
    Duration: 24 Mar 201329 Mar 2013
    Conference number: 12

    Publication series

    Name
    PublisherACM

    Conference

    Conference12th Annual International Conference on Aspect-Oriented Software Development, AOSD 2013
    Abbreviated titleAOSD
    CountryJapan
    CityFukuoka
    Period24/03/1329/03/13

    Keywords

    • CR-D.3.4
    • language implementation
    • modular optimization
    • METIS-302700
    • IR-89582
    • Advanced dispatching
    • EWI-24443

    Cite this