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


    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)
    Number of pages6
    ISBN (Print)978-1-60558-452-2
    Publication statusPublished - Mar 2009
    EventFOAL '09: 2009 workshop on Foundations of aspect-oriented languages - Charlottesville, Virginia, USA
    Duration: 2 Mar 20092 Mar 2009

    Publication series



    WorkshopFOAL '09: 2009 workshop on Foundations of aspect-oriented languages
    Other2 Mar 2009


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

    Cite this