Genericity allows the substitution of types in a class. This is usually obtained through parameterized classes, although they are inflexible since any class can be inherited but i...
for data abstraction and justifies reasoning by simulation. Representation independence has been shown for a variety of languages and constructs but not for shared references to mu...
The goal of this paper is to obtain a one-to-one correspondence between state machines as e.g. used in UML and object-oriented programming languages. A proposal is made for a lang...
Teaching introductory object-oriented programming presents considerable challenges. Some of these challenges are due to the intrinsic complexity of the subject matter — object-or...