An execution layer for aspect-oriented programming languages

  • Authors:
  • Michael Haupt;Mira Mezini;Christoph Bockisch;Tom Dinkelaker;Michael Eichberg;Michael Krebs

  • Affiliations:
  • Darmstadt University of Technology, Germany;Darmstadt University of Technology, Germany;Darmstadt University of Technology, Germany;Darmstadt University of Technology, Germany;Darmstadt University of Technology, Germany;Darmstadt University of Technology, Germany

  • Venue:
  • Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Language mechanisms deserve language implementation effort. While this maxim has led to sophisticated support for language features specific to object-oriented, functional and logic programming languages, aspect-oriented programming languages are still mostly implemented using postprocessors. The Steamloom virtual machine, based on IBM's Jikes RVM, provides support for aspect-oriented programming at virtual machine level. A bytecode framework called BAT was integrated with the Jikes RVM to replace its bytecode management logic. While preserving the functionality needed by the VM, BAT also allows for querying application code for join point shadows, avoiding redundancy in bytecode representation. Performance measurements show that an AOP-enabled virtual machine like Steamloom does not inflict unnecessary performance penalties on a running application; when it comes to executing AOP-related operations, there even are significant performance gains compared to other approaches.