|
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.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Bowen Alpern , C. R. Attanasio , Anthony Cocchi , Derek Lieber , Stephen Smith , Ton Ngo , John J. Barton , Susan Flynn Hummel , Janice C. Sheperd , Mark Mergen, Implementing jalapeño in Java, Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.314-324, November 01-05, 1999, Denver, Colorado, United States
|
| |
2
|
B. Alpern , C. R. Attanasio , J. J. Barton , M. G. Burke , P. Cheng , J.-D. Choi , A. Cocchi , S. J. Fink , D. Grove , M. Hind , S. F. Hummel , D. Lieber , V. Litvinov , M. F. Mergen , T. Ngo , J. R. Russell , V. Sarkar , M. J. Serrano , J. C. Shepherd , S. E. Smith , V. C. Sreedhar , H. Srinivasan , J. Whaley, The Jalapeño virtual machine, IBM Systems Journal, v.39 n.1, p.211-238, January 2000
|
| |
3
|
AspectJ Home Page. http://www.eclipse.org/ aspectj/.
|
| |
4
|
AspectWerkz Home Page. http://aspectwerkz.codehaus.org/.
|
 |
5
|
Pavel Avgustinov , Aske Simon Christensen , Laurie Hendren , Sascha Kuzins , Jennifer Lhoták , Ondřej Lhoták , Oege de Moor , Damien Sereni , Ganesh Sittampalam , Julian Tibble, abc: an extensible AspectJ compiler, Proceedings of the 4th international conference on Aspect-oriented software development, p.87-98, March 14-18, 2005, Chicago, Illinois
[doi> 10.1145/1052898.1052906]
|
| |
6
|
BAT Home Page. http://www.st.informatik.tu-darmstadt.de/ pages/ projects/BAT/.
|
| |
7
|
Byte Code Engineering Library (BCEL) Manual. http://jakarta.apache.org/ bcel/ manual.html.
|
 |
8
|
Christoph Bockisch , Michael Haupt , Mira Mezini , Klaus Ostermann, Virtual machine support for dynamic join points, Proceedings of the 3rd international conference on Aspect-oriented software development, p.83-92, March 22-24, 2004, Lancaster, UK
[doi> 10.1145/976270.976282]
|
| |
9
|
J. M. Bull, L. A. Smith, M. D. Westhead, D. S. Henty, and R. A. Davey. A Benchmark Suite for High Performance Java. Concurrency: Practice and Experience, 12(6):375--388, 2000.
|
 |
10
|
Michael G. Burke , Jong-Deok Choi , Stephen Fink , David Grove , Michael Hind , Vivek Sarkar , Mauricio J. Serrano , V. C. Sreedhar , Harini Srinivasan , John Whaley, The Jalapeño dynamic optimizing compiler for Java, Proceedings of the ACM 1999 conference on Java Grande, p.129-141, June 12-14, 1999, San Francisco, California, United States
[doi> 10.1145/304065.304113]
|
| |
11
|
M. Dmitriev. Towards Flexible and Safe Technology for Runtime Evolution of Java Language Applications. In Workshop on Engineering Complex Object-Oriented Systems for Evolution, Proceedings (at OOPSLA 2001), 2001.
|
| |
12
|
R. Douence and Mario Südholt. A Model and a Tool for Event-Based Aspect-Oriented Programming (EAOP). Technical Report 02/11/INFO, Ecole des Mines de Nantes, 2002.
|
| |
13
|
EAOP Home Page. http://www.emn.fr/x-info/eaop/.
|
| |
14
|
R. E. Filman, M. Haupt, K. Mehner, and M. Mezini (eds.). Proceedings of the 2003 Dynamic Aspects Workshop. Technical Report RIACS Technical Report No. 04.01, RIACS, 2004.
|
| |
15
|
S. Fink and F. Qian. Design, Implementation and Evaluation of Adaptive Recompilation with On-Stack Replacement. http://www.research.ibm.com/ people/s/sfink/papers/cgo03.ps.gz, 2003.
|
| |
16
|
M. Haupt and M. Mezini. Virtual Machine Support for Aspects with Advice Instance Tables. First French Workshop on Aspect-Oriented Programming (JFDLPA), Paris, France, Sep. 14th, 2004. http:// www.st.informatik.tu-darmstadt.de/database/ publications/ data/ JFDLPA04.pdf? id=102.
|
| |
17
|
M. Haupt and M. Mezini. Micro-Measurements for Dynamic Aspect-Oriented Systems. In M. Weske and P. Liggesmeyer, editors, Proc. Net.ObjectDays 2004, volume 3263 of LNCS. Springer, 2004.
|
 |
18
|
|
| |
19
|
JAsCo Home Page. http://ssel.vub.ac.be/jasco/.
|
| |
20
|
JavaGrande Benchmarks Home Page. http://www.dhpc.adelaide.edu.au/projects/javagrande/benchmarks/.
|
| |
21
|
JBoss AOP Home Page. http://www.jboss.org/ developers/ projects/ jboss/ aop.jsp.
|
| |
22
|
Jikes Bytecode Toolkit Home Page. http://www.alphaworks.ibm.com/tech/jikesbt/.
|
| |
23
|
The Jikes Research Virtual Machine. http://www-124.ibm.com/developerworks/oss/jikesrvm/.
|
| |
24
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William G. Griswold, An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, p.327-353, June 18-22, 2001
|
| |
25
|
H. Masuhara and G. Kiczales. A Modeling Framework for Aspect-Oriented Mechanisms. In Proc. ECOOP 2003, 2003.
|
| |
26
|
H. Masuhara, G. Kiczales, and C. Dutchyn. A Compilation and Optimization Model for Aspect-Oriented Programs. In G. Hedin, editor, Proc. CC 2003, volume 2622 of LNCS, pages 46--60. Springer, 2003.
|
| |
27
|
K. Ostermann, M. Mezini, and C. Bockisch. Expressive Pointcuts for Increased Modularity. In Proc. ECOOP 2005, 2005. to appear.
|
 |
28
|
|
 |
29
|
|
| |
30
|
PROSE Home Page. http://ikplab11.inf.ethz.ch:9000/ prose/.
|
| |
31
|
SPECjbb2000 Home Page. http://www.specbench.org/ osg/ jbb2000/.
|
| |
32
|
SPECjvm98 Home Page. http://www.spec.org/ osg/ jvm98/.
|
 |
33
|
|
| |
34
|
W. Vanderperren and D. Suvee. Optimizing JAsCo Dynamic AOP through HotSwap and Jutta. In FilmanHauptMehnerMezini04.
|
|