Transformational Generation of Language Plug-ins in the Harmonia Framework

Andrew Begel, Marat Boshernitsan and Susan L. Graham

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-05-1370
January 2005

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2005/CSD-05-1370.pdf

The Harmonia framework provides an infrastructure for building language-aware interactive programming tools. Harmonia supports many languages through language plug-ins, which are dynamically-loadable system extensions generated from lexical, syntactic, and semantic descriptions. In this report, we describe our approach to generating Harmonia language plug-ins from a variety of domain-specific description languages. We present the process of configuring plug-in analysis components, the transformations for high-level syntactic and semantic descriptions, and the optimizations for generated code. This largely ad-hoc process makes our generation techniques expensive to create and difficult to maintain. We propose a new component-based architecture based on transformational generation, present its benefits, and outline several research directions that still need to be addressed by the generative programming community.


BibTeX citation:

@techreport{Begel:CSD-05-1370,
    Author = {Begel, Andrew and Boshernitsan, Marat and Graham, Susan L.},
    Title = {Transformational Generation of Language Plug-ins in the Harmonia Framework},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {2005},
    Month = {Jan},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2005/5421.html},
    Number = {UCB/CSD-05-1370},
    Abstract = {The Harmonia framework provides an infrastructure for building language-aware interactive programming tools. Harmonia supports many languages through language plug-ins, which are dynamically-loadable system extensions generated from lexical, syntactic, and semantic descriptions. In this report, we describe our approach to generating Harmonia language plug-ins from a variety of domain-specific description languages. We present the process of configuring plug-in analysis components, the transformations for high-level syntactic and semantic descriptions, and the optimizations for generated code. This largely ad-hoc process makes our generation techniques expensive to create and difficult to maintain. We propose a new component-based architecture based on transformational generation, present its benefits, and outline several research directions that still need to be addressed by the generative programming community.}
}

EndNote citation:

%0 Report
%A Begel, Andrew
%A Boshernitsan, Marat
%A Graham, Susan L.
%T Transformational Generation of Language Plug-ins in the Harmonia Framework
%I EECS Department, University of California, Berkeley
%D 2005
%@ UCB/CSD-05-1370
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2005/5421.html
%F Begel:CSD-05-1370