For various reasons, I find myself needing to know something about object-oriented programming and seek help from my learned friends and acquaintances in understanding what it is all about in categorical terms. "Object-speak" is the terminology used in the so called object- oriented technology, implemented in the (now ten year old) programming language C++ and in other languages as well. It uses terms (taken here from David A. Taylor's "Object- Oriented Technology" Addison-Wesley 1990) such as: object: a software packet that contains a collection of related data (in the form of variables) and methods for operating on that data. method: a procedure contained within an object that is made available to other objects. message: a signal from one object to another that requests the receiving object to carry out one of its methods. class: a template for defining the methods and variables for a particular type of object; can contain subclasses which are special cases. instance: refers to an object that belongs to a particular class. inheritance: a mechanism whereby classes can make use of the methods and variables defined in all classes above them on their branch of the class hierarchy. encapsulation: a technique in which data is packaged together with its corresponding procedures. In object- oriented technology, the mechanism for encapsulation is the object. data abstraction: the process of defining new higher-level data types. polymorphism: the ability to hide different implementations behind a common interface to simplify communications among objects. What does all this really mean? Does all this structure lead to (or arise from) a theory? Is there an interpretation of "object-speak" in a category (with what properties ?) so that it might be understood in category theoretic terms? Are there any references that explicitly make such a connection? Al Vilcius, Toronto ==============================================================================