Incremental Evaluation of Higher Order Attributes

Jeroen Bransen, Atze Dijkstra, Doaitse Swierstra

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

    Abstract

    Compilers, amongst other programs, often work with data that (slowly) changes over time. When the changes between subsequent runs of the compiler are small, one would hope the compiler to incrementally update its results, resulting in much lower running times. However, the manual construction of an incremental compiler is very hard and error prone and therefore usually not an option.

    Attribute grammars provide an attractive way of constructing compilers, as they are compositional in nature and allow for aspect oriented programming. In this work we extend previous work on the automatic generation of incremental attribute grammar evaluators, with the purpose of (semi-)automatically generating an incremental compiler from the regular attribute grammar definition, by adding support for incremental evaluation of higher order attributes, a well known extension to the classical attribute grammars that is used in many ways in compiler construction, for example to model different compiler phases.
    Original languageEnglish
    Title of host publicationPEPM '15: Proceedings of the 2015 Workshop on Partial Evaluation and Program Manipulation
    Place of PublicationNew York, NY, USA
    PublisherAssociation for Computing Machinery
    Pages39-48
    Number of pages10
    ISBN (Print)978-1-4503-3297-2
    DOIs
    Publication statusPublished - 2015

    Publication series

    NamePEPM '15

    Keywords

    • attribute grammars
    • change propagation
    • incremental evaluation
    • program transformation
    • type inference

    Fingerprint

    Dive into the research topics of 'Incremental Evaluation of Higher Order Attributes'. Together they form a unique fingerprint.

    Cite this