Emerging modularization techniques such as aspects and their precursors such as events in implicit invocation languages aim to provide a software engineer with better facilities to separate conceptual concerns in software systems. To facilitate adoption of these techniques in real world software projects, seamless integration into well-accepted practices such as a test-driven development process is essential. To that end, the main contribution of this thesis is an analysis (both pragmatic and theoretical) of the impact of a class of such techniques on the efficiency of a test-driven development process, which involves frequently compiling and testing programs in a process commonly known as the edit-compile-test cycle. I study two variants: ...
Providing proper modularity is one of the major challenges in software development. In the context o...
A large part of the software development effort is typically spent on maintenance and evolution, nam...
Abstract. Software developers create a variety of artifacts that model the behaviour of applications...
Aspect-oriented software development is motivated by the desire to localize definitions of independe...
From the early days of computers, researchers have been trying to invent effective and efficient mea...
A large variety of programming languages exists, and these languages differ substantially with regar...
Aspect Aspect-oriented programming is known as a technique for modularizing crosscutting concerns. ...
Aspect-Oriented Programming is a topic of growing interest, since its presentation in 1997, and sign...
Compilers are among the most widely-studied pieces of software; and, modularizing these valuable art...
Software development is changing. The opportunities of the Internet, computerized businesses, and co...
Implicit invocation and aspect-oriented languages provide related but distinct mechanisms for separa...
In this demonstration we show our language Ptolemy, which allows for separation of crosscutting conc...
Language extensions are proposed to make aspects more natural for programmers. The extensions involv...
The dominant family of aspect-oriented programming (AOP) languages, namely the family of lan-guages ...
This work describes a language design experiment in the context of aspect-oriented programming. The ...
Providing proper modularity is one of the major challenges in software development. In the context o...
A large part of the software development effort is typically spent on maintenance and evolution, nam...
Abstract. Software developers create a variety of artifacts that model the behaviour of applications...
Aspect-oriented software development is motivated by the desire to localize definitions of independe...
From the early days of computers, researchers have been trying to invent effective and efficient mea...
A large variety of programming languages exists, and these languages differ substantially with regar...
Aspect Aspect-oriented programming is known as a technique for modularizing crosscutting concerns. ...
Aspect-Oriented Programming is a topic of growing interest, since its presentation in 1997, and sign...
Compilers are among the most widely-studied pieces of software; and, modularizing these valuable art...
Software development is changing. The opportunities of the Internet, computerized businesses, and co...
Implicit invocation and aspect-oriented languages provide related but distinct mechanisms for separa...
In this demonstration we show our language Ptolemy, which allows for separation of crosscutting conc...
Language extensions are proposed to make aspects more natural for programmers. The extensions involv...
The dominant family of aspect-oriented programming (AOP) languages, namely the family of lan-guages ...
This work describes a language design experiment in the context of aspect-oriented programming. The ...
Providing proper modularity is one of the major challenges in software development. In the context o...
A large part of the software development effort is typically spent on maintenance and evolution, nam...
Abstract. Software developers create a variety of artifacts that model the behaviour of applications...