Beta 1

Title A simple aspect-oriented language based on C#
Author Kragelund, Jakob
Supervisor Probst, Christian W. (Language-Based Technology, Department of Informatics and Mathematical Modeling, Technical University of Denmark, DTU, DK-2800 Kgs. Lyngby, Denmark)
Institution Technical University of Denmark, DTU, DK-2800 Kgs. Lyngby, Denmark
Thesis level Bachelor thesis
Year 2009
Abstract This report, titled "A simple aspect-oriented language based on C#" is about my work on designing and implementing an aspect-oriented programming language. Aspect-oriented programming is a programming paradigm that seeks to enhance the modularity of programs, by facilitating the separation of cross-cutting concerns. Many common problems, such as logging, security and synchronisation, requires code that cuts across a series of other modules. Aspect-oriented programming allows the programmer to separate and encapsulate these functionalities, so tangling of the code can be avoided. During this report, I will describe how I design and implement an aspect-oriented extension to the programming language C#, by developing a preprocessor containing a parser, which is able to generate a syntax tree based on the C# code given as input, and an aspect weaver, whose job it is to modify this syntax tree with the intent of weaving the different aspects of the program together. The product of this project is a first version of an implementation of an aspectoriented extension of the C# language, containing a series of basic functionality that illustrates the use of aspect-oriented programming in a modern programming language.
Imprint Technical University of Denmark (DTU) : Kgs. Lyngby, Denmark
Series IMM-B.Sc.-2009-17
Original PDF bac09_17.pdf (0.76 MB)
Admin Creation date: 2009-07-01    Update date: 2010-10-28    Source: dtu    ID: 246031    Original MXD