ACM Home Page
Please provide us with feedback. Feedback
Aspect weaving in standard Java class libraries
Full text PdfPdf (484 KB)
Source
ACM International Conference Proceeding Series; Vol. 347 archive
Proceedings of the 6th international symposium on Principles and practice of programming in Java table of contents
Modena, Italy
SESSION: Class hierarchies & Java libraries table of contents
Pages 159-167  
Year of Publication: 2008
ISBN:978-1-60558-223-8
Authors
Alex Villazón  University of Lugano, Lugano Switzerland
Walter Binder  University of Lugano, Lugano Switzerland
Philippe Moret  University of Lugano, Lugano Switzerland
Sponsor
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 11,   Downloads (12 Months): 105,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1411732.1411754
What is a DOI?

ABSTRACT

Aspect-oriented programming (AOP) has been successfully applied to application code thanks to techniques such as Java bytecode instrumentation. Unfortunately, with current technology, such as AspectJ, aspects cannot be woven into standard Java class libraries. This restriction is particularly unfortunate for aspects that would benefit from a complete bytecode coverage, such as profiling or debugging aspects. In this paper we present an adaptation of the popular AspectJ weaver that is able to weave aspects also into standard Java class libraries. We evaluate our approach with existing profiling aspects, which now cover all bytecode executing in the virtual machine. In addition, we present a new aspect for memory leak detection that also benefits from our approach.


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
2
 
3
BEA. JRockit. Web pages at http://dev2dev.bea.com/jrockit/.
 
4
W. Binder. A portable and customizable profiling framework for Java based on bytecode instruction counting. In Third Asian Symposium on Programming Languages and Systems (APLAS 2005), volume 3780 of Lecture Notes in Computer Science, pages 178--194, Tsukuba, Japan, Nov. 2005. Springer Verlag.
5
6
 
7
 
8
M. Dahm. Byte code engineering. In Java-Information-Tage 1999 (JIT '99), Sept. 1999. http://jakarta.apache.org/bcel/.
9
10
11
12
13
 
14
15
16
 
17
 
18
G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-Oriented Programming. In M. Akşit and S. Matsuoka, editors, Proceedings of European Conference on Object-Oriented Programming, volume 1241, pages 220--242. Springer-Verlag, Berlin, Heidelberg, and New York, 1997.
 
19
 
20
N. Mitchell and G. Sevitsky. LeakBot: An automated and lightweight tool for diagnosing memory leaks in large Java applications. In ECOOP '03-Object-Oriented Programming, volume 2743 of Lecture Notes in Computer Science, pages 351--377. Springer, 2003.
 
21
ObjectWeb. ASM. Web pages at http://asm.objectweb.org/.
 
22
23
 
24
Sun Microsystems, Inc. Java Virtual Machine Profiler Interface (JVMPI). Web pages at http://java.sun.com/j2se/1.4.2/docs/guide/jvmpi/.
 
25
Sun Microsystems, Inc. JVM Tool Interface (JVMTI) version 1.1. Web pages at http://java.sun.com/javase/6/docs/technotes/guides/jvmti/index.html.
 
26
27
 
28


Collaborative Colleagues:
Alex Villazón: colleagues
Walter Binder: colleagues
Philippe Moret: colleagues