A theory of aspects

David Walker, Steve Zdancewic, Jay Ligatti

Research output: Contribution to journalConference article

23 Scopus citations

Abstract

This paper define the semantics of MinAML, an idealized aspect-oriented programming language, by giving a type-directed translation from its user-friendly external language to its compact, well-defined core language. We argue that our framework is an effective way to give semantics to aspect-oriented programming languages in general because the translation eliminates shallow syntactic differences between related constructs and permits definition of a clean, easy-to-understand, and easy-to-reason-about core language. The core language extends the simply-typed lambda calculus with two central new abstractions: explicitly labeled program points and first-class advice. The labels serve both to trigger advice and to mark continuations that the advice may return to. These constructs are defined orthogonally to the other features of the language and we show that our abstractions can be used in both functional and object-oriented contexts. The labels are well-scoped and the language as a whole is well-typed. Consequently, programmers can use lexical scoping in the standard way to prevent aspects from interfering with local program invariants.

Original languageEnglish (US)
Pages (from-to)127-139
Number of pages13
JournalACM SIGPLAN Notices
Volume38
Issue number9
DOIs
StatePublished - Sep 2003
EventProceedings of the 2003 ACM SIGPLAN International Conference on Functional Programming - Uppsala, Sweden
Duration: Aug 25 2003Aug 29 2003

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Graphics and Computer-Aided Design

Keywords

  • Aspect-oriented programming
  • Aspects
  • Operational semantics
  • Type theory

Fingerprint Dive into the research topics of 'A theory of aspects'. Together they form a unique fingerprint.

  • Cite this

    Walker, D., Zdancewic, S., & Ligatti, J. (2003). A theory of aspects. ACM SIGPLAN Notices, 38(9), 127-139. https://doi.org/10.1145/944746.944718