AOSD 2002
Program
spacerIntroduction
spacerOverview
spacerKeynotes
spacerInvited Sessions
spacerPanel
spacerPaper Sessions
spacerTutorials
spacerWorkshops
spacerDemonstrations
spacerInformal Meetings
Registration
Accommodation
Transportation
About Enschede
Student Volunteers
Organization
Sponsors
Contact
AOSD 2002
Keynotes Invited Sessions Panel Paper Sessions Tutorials Workshops Demonstrations
HyperProbe TAST GME Xlinkit clawclr Gilgul ConTraCT FEAT
Demonstration title
Cross-Language Load-Time Aspect Weaving on Microsoft's Common Language Runtime
Organizers
  • John Lam (Naleco Research Inc, Toronto, Canada)
Day
Wednesday April 24, 2:45-3:30
Thursday April 25, 2:45-3:30
Abstract

Microsoft's Common Language Runtime (CLR) provides excellent support for both cross-language programming and runtime code instrumentation. This demonstration presents work in progress towards load time aspect weaving on the CLR.

The novel aspect of our implementation is that all aspect weaving occurs at JIT compilation time and at the level of compiled Common Intermediate Language (CIL) instructions. This technique allows us to weave aspects and target code that was written using different CLR programming languages. Furthermore, this technique allows us to weave aspects into both system library code and user-defined code.

This demonstration will show load time aspect weaving using different CLR programming languages. We will demonstrate weaving a generic call tracer into both user-defined and system library code, as well as weaving pre and post conditional assertions into user-defined and system library code to implement design-by-contract semantics. We will discuss the implementation of the runtime aspect weaver, and the novel features of the CLR that make runtime aspect weaving feasible.

You can check on the progress of John's AOP engine by reading his web log at http://www.iunknown.com

Keynotes Invited Sessions Panel Paper Sessions Tutorials Workshops Demonstrations
HyperProbe TAST GME Xlinkit clawclr Gilgul ConTraCT FEAT