Aliasing is endemic in object oriented programming. Because an object can be modified via any alias, object oriented programs are hard to understand, maintain, and analyse. Flexibl...
Unwanted effects of aliasing cause encapsulation problems in object oriented programming. Nevertheless, aliasing is part of common and efficient programming techniques for expres...
In object oriented programming, it is sometimes necessary to copy objects and to compare them for equality or inequality. We discuss some of the issues involved in copying and comp...
Although classical object-oriented programming languages provide high-level modeling capacities t data type, inheritance etc.), they remain low-level when it comes to data manipul...
In object oriented programming, the functionalities of a system result from the interactions (message exchanges) among the objects allocated by the system. While designing object ...
We identify three design principles for reflection and metaprogramming facilities in object oriented programming languages. Encapsulation: meta-level facilities must encapsulate t...