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
Staijen, T. ; Rensink, Arend. / Graph-Based Specification and Simulation of Featherweight Java with Around Advice. FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages. New York : Association for Computing Machinery (ACM), 2009. pp. 25-30
@inproceedings{2e8ca3b3fcf84783ae08e3d5c8938fec,
title = "Graph-Based Specification and Simulation of Featherweight Java with Around Advice",
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.",
keywords = "EWI-15236, Simulation, METIS-263789, Formal Semantics, Graph Transformations, IR-62788",
author = "T. Staijen and Arend Rensink",
note = "10.1145/1509837.1509844",
year = "2009",
month = "3",
doi = "10.1145/1509837.1509844",
language = "Undefined",
isbn = "978-1-60558-452-2",
publisher = "Association for Computing Machinery (ACM)",
pages = "25--30",
booktitle = "FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages",
address = "United States",

}

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., 10.1145/1509837.1509844, Association for Computing Machinery (ACM), New York, pp. 25-30. https://doi.org/10.1145/1509837.1509844

Graph-Based Specification and Simulation of Featherweight Java with Around Advice. / Staijen, T.; Rensink, Arend.

FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages. New York : Association for Computing Machinery (ACM), 2009. p. 25-30 10.1145/1509837.1509844.

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

TY - GEN

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

AU - Staijen, T.

AU - Rensink, Arend

N1 - 10.1145/1509837.1509844

PY - 2009/3

Y1 - 2009/3

N2 - 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.

AB - 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.

KW - EWI-15236

KW - Simulation

KW - METIS-263789

KW - Formal Semantics

KW - Graph Transformations

KW - IR-62788

U2 - 10.1145/1509837.1509844

DO - 10.1145/1509837.1509844

M3 - Conference contribution

SN - 978-1-60558-452-2

SP - 25

EP - 30

BT - FOAL '09: Proceedings of the 2009 workshop on Foundations of aspect-oriented languages

PB - Association for Computing Machinery (ACM)

CY - New York

ER -

Staijen T, Rensink A. 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. New York: Association for Computing Machinery (ACM). 2009. p. 25-30. 10.1145/1509837.1509844 https://doi.org/10.1145/1509837.1509844