AOP Support for C#
The authors have extended the C# compiler available under Microsoft's Shared Source Common Language Infrastructure (SSCLI) to facilitate Aspect Oriented Programming. The resulting compiler targets Microsoft .NET architecture. Their implementation introduces new ideas into the aspect language and the aspect-weaving mechanism. Their AOP extensions emulate AspectJ programming model and augment it with constructs that harness facilities provided by the Microsoft's .NET architecture. In particular, their framework allows aspect definitions to introduce 'Attributes' on base C# module elements. This allows .NET runtime to provide container services transparently to marked modules and module elements.