This dissertation defines "modular-objective coupling", and shows that programming language designs which imply reduced modular-objective coupling reduce complexity of remodularizations--behaviour-preserving restructurings for which the only intended goals are to change program source code structure. We explicitly distinguish between two points of view on program structure: modular structure--the structure of a program as a set of static text documents, and objective structure--the structure of a program as a dynamic computational model during execution. We define modular-objective coupling as the degree to which changes in modular structure imply changes to objective structure, for a given programming language. We use the term remodulari...
Domain-specific languages (DSLs) are now ubiquitous. New DSLs are needed and existing DSLs are evolv...
A goal of software product lines is the economical synthesis of programs in a family of programs. In...
In understanding complex algorithms, the notions of encapsulation and modularization have played a ...
Parnas\u27 seminal 1972 paper, On the Criteria To Be Used in Decomposing Systems into Modules, ide...
Compilers are among the most widely-studied pieces of software; and, modularizing these valuable art...
AbstractThe software maintenance activities performed without following the original design decision...
ABSTRACT Software systems are modularized to make their inherent complexity manageable. While there ...
Structured programming languages have been in use for several decades. Each of these languages has d...
Programming languages and formal notations are central to computer science. A significant part of c...
Since the earliest days of software development, the issue of software modularity has been addressed...
Aspect-Oriented Programming is a topic of growing interest, since its presentation in 1997, and sign...
Providing proper modularity is one of the major challenges in software development. In the context o...
The development of programming languages is challenging because the typical language processing tool...
A goal of software product lines is the economical assembly of programs in a family of programs. In ...
textFeatures are increments in program functionality. Feature abstraction, the process of abstracti...
Domain-specific languages (DSLs) are now ubiquitous. New DSLs are needed and existing DSLs are evolv...
A goal of software product lines is the economical synthesis of programs in a family of programs. In...
In understanding complex algorithms, the notions of encapsulation and modularization have played a ...
Parnas\u27 seminal 1972 paper, On the Criteria To Be Used in Decomposing Systems into Modules, ide...
Compilers are among the most widely-studied pieces of software; and, modularizing these valuable art...
AbstractThe software maintenance activities performed without following the original design decision...
ABSTRACT Software systems are modularized to make their inherent complexity manageable. While there ...
Structured programming languages have been in use for several decades. Each of these languages has d...
Programming languages and formal notations are central to computer science. A significant part of c...
Since the earliest days of software development, the issue of software modularity has been addressed...
Aspect-Oriented Programming is a topic of growing interest, since its presentation in 1997, and sign...
Providing proper modularity is one of the major challenges in software development. In the context o...
The development of programming languages is challenging because the typical language processing tool...
A goal of software product lines is the economical assembly of programs in a family of programs. In ...
textFeatures are increments in program functionality. Feature abstraction, the process of abstracti...
Domain-specific languages (DSLs) are now ubiquitous. New DSLs are needed and existing DSLs are evolv...
A goal of software product lines is the economical synthesis of programs in a family of programs. In...
In understanding complex algorithms, the notions of encapsulation and modularization have played a ...