Abstract. Aspect oriented programming brings us new design perspectives since it permits the superimpositions of multiple abstraction models on top of one another. It is a very pow...
We identify three design principles for reflection and metaprogramming facilities in object oriented programming languages. Encapsulation: meta-level facilities must encapsulate t...
Smalltalk-80 is a pure object-oriented language in which messages are dispatched according to the class of the receiver, or first argument, of a message. Object-oriented languages ...
This paper discusses an approach for top-down composition of software architectures. First, an architecture is derived that addresses functional requirements only. This architectu...
The construction and maintenance of large and complex software systems depend on the existence of global principles describing the structure and the interaction among its various ...