Component approach for construction of optimizing compilers (Q1040339)

From MaRDI portal
scientific article
Language Label Description Also known as
English
Component approach for construction of optimizing compilers
scientific article

    Statements

    Component approach for construction of optimizing compilers (English)
    0 references
    24 November 2009
    0 references
    This paper proposes a new compiler construction methodology based on componentization of the various phases of the compilation process. The paper does not bring any new compiler optimization algorithm or new analysis technique. It is the classic compilation process under a different approach. It starts with the observation that during the creation of an optimizing compiler the same algorithms or similar algorithms are re-implemented over and over again with different Intermediate Representations (IR) of the original program. The idea is to separate the analysis and optimization algorithms from the IR and reuse the algorithms' implementation over various phases of the compilation or arbitrary compiler systems. These reusable algorithms are the components of a Universal Translating Library (UTL). UTL also includes all the other tools, basic algorithms and data structures for creating and modifying all kinds of translation systems including compilers. The paper goes into a more detailed presentation of the hierarchical structure of UTL and the separation between the semantic representation and analytical representation of a program during the component-based compilation. A proof of the concept for the component-based compilation is described in the last part of the paper. A demo version is available at \url{http://www.optimitech.com}, which seems to be the web page of a company based in Russia and dedicated to this technology.
    0 references
    compilers
    0 references
    optimization
    0 references
    intermediate representation
    0 references
    semantic analysis
    0 references
    0 references
    0 references
    0 references

    Identifiers