Graph-Based Specification and Simulation of Featherweight Java with Around Advice

T. Staijen, Arend Rensink

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

    Abstract

    In this paper we specify an operational run-time semantics of Assignment Featherweight Java -- a minimal subset of Java with assignments -- with around advice, using graph transformations. We introduce a notion of correctness of our specification with respect to an existing semantics and claim a number of advantages over traditional mathematical notations, that come forth from the executable nature of graph-transformation-based semantics. Using test programs as graphs during specification of the semantics, simulation can help in verifying the correctness of the rules simply by testing, increasing the rigorousness of the specification process. Also, execution of the semantics results in a state space that can be used for analysis and verification, giving rise to an effective method for aspect program verification. As a criterion for correctness, we use a structural operational semantics of this language from the so-called Common Aspect Semantics Base.
    Original languageUndefined
    Title of host publicationFOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
    Place of PublicationNew York
    PublisherAssociation for Computing Machinery (ACM)
    Pages25-30
    Number of pages6
    ISBN (Print)978-1-60558-452-2
    DOIs
    Publication statusPublished - Mar 2009

    Publication series

    Name
    PublisherACM

    Keywords

    • EWI-15236
    • Simulation
    • METIS-263789
    • Formal Semantics
    • Graph Transformations
    • IR-62788

    Cite this

    Staijen, T., & Rensink, A. (2009). Graph-Based Specification and Simulation of Featherweight Java with Around Advice. In FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages (pp. 25-30). [10.1145/1509837.1509844] New York: Association for Computing Machinery (ACM). https://doi.org/10.1145/1509837.1509844