Publication Type |
technical report |
School or College |
College of Engineering |
Department |
Kahlert School of Computing |
Program |
Advanced Research Projects Agency |
Creator |
Baker, Jason; Hsieh, Wilson C. |
Title |
Runtime aspect weaving through metaprogramming |
Date |
2001 |
Description |
We describe an extension to the Java language, Handi-Wrap, that supports weaving aspects into code at runtime. Aspects in Handi-Wrap take the form of method wrappers, which allow aspect code to be inserted around method bodies like advice in AspectJ. Handi- Wrap offers several advantages over static aspect languages such as AspectJ. First, aspects can be woven into binary libraries. Second, a wrapper in Handi-Wrap is a first-class Java value, which allows users to exploit Java mechanisms to define and weave wrappers. For example, wrappers can be passed explicit constructor arguments, and wrapper objects can be composed. Finally, methods in all Java classes, including anonymous classes, can be wrapped. A prototype of Handi-Wrap is implemented in a compile-time metaprogramming system for Java, called Maya; we briefly describe how Maya?s features support Handi- Wrap. |
Type |
Text |
Publisher |
University of Utah |
Subject |
Metaprogramming; Runtime; Handi-Wrap |
Subject LCSH |
Java (Computer program language) |
Language |
eng |
Bibliographic Citation |
Baker, Jason; Hsieh, Wilson C. (2001). Runtime aspect weaving through metaprogramming. UUCS-01-013 |
Series |
University of Utah Computer Science Technical Report |
Relation is Part of |
ARPANET |
Rights Management |
©University of Utah |
Format Medium |
application/pdf |
Format Extent |
87,373 bytes |
Source |
University of Utah School of Computing |
ARK |
ark:/87278/s6fx7tw3 |
Setname |
ir_uspace |
ID |
705143 |
Reference URL |
https://collections.lib.utah.edu/ark:/87278/s6fx7tw3 |