University of Twente Student Theses

Login

Signature modification for Compose?/.NET : implications of signature modification for generic compilers and behavioral signatures of types

Jongeling, R. (2008) Signature modification for Compose?/.NET : implications of signature modification for generic compilers and behavioral signatures of types.

[img] PDF
1MB
Abstract:Aspect-oriented programming solves one of the problems in object oriented programming by providing a better separation of concerns. The composition filter model is an implementation of AOP, which uses filtering of messages that are sent between objects. One of the techiques enabled by composition filters is signature modification. Signature modification allows composition filters to add methods to or remove methods from types.This thesis consists of two parts. First, it presents a new solution to add support for signature modification to the compilation process of Compose?/.NET. Second, it presents an evaluation of extending the filter analysis part of Compose to include full behavioral analysis of the program. The old solution that added support for signature modification to Compose/.NET was found to be incompatible with the standard .NET 2.0 compilers. Furthermore, it is language dependent and lacks the support for self-referencing types. The current implementation of Compose?/.NET 2.0+ does not support signature modification. A new solution is presented, that improves on the existing Compose?/.NET 2.0+ implementation. The improved compilation process introduces support for signature modification, is compatible with the .NET 2.0 compilers, is language independent and better maintainable than the previous solution. It does not add support for self-referencing types. This thesis also presents an evaluation of extending the behavioral analysis performed by Compose?. The behavior of a type can be altered by the applied composition filters. The current behavioral analysis is limited to the behavior of composition filters. It describes this behavior with the resource-operation model. The behavioral analysis could be extended to include the behavior of the source code. This would enable Compose? to detect composition filters that introduce conflicting behavior to a type. The resource-operation model was found to be too generic and too abstract to be used to describe the behavior of a program. Extending the existing behavioral analysis to include analysis of source code is therefore difficult to achieve. An alternative is presented that extends the behavioral analysis to detect possible behavioral conflicts. This analysis is more limited than full behavioral analysis, but is easier to implement.
Item Type:Essay (Master)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science MSc (60300)
Link to this item:https://purl.utwente.nl/essays/58342
Export this item as:BibTeX
EndNote
HTML Citation
Reference Manager

 

Repository Staff Only: item control page