Yes, I am aware of the structure. object.message In discussions of OOP I read, the difference is made between procedural, which starts with data, and flows from action to action to an end point in a structure organized by time, and OOP, portrayed as objects linked together by actions in timeless fashion. I think what I am discovering, is that for most of its communication, OOP relies on a hierarchy all the same, but a hierarchy of objects. If object A and object B need to communicate, they can as long as they are embedded in object C which can call on A and on B as needed. Something like that. That seems to be what OOP demystified is explaining in its example on collaboration in chapter 9. Because Keogth called the super class, linkCourseStudent, I did not realize that it was creating a class in a hierarchy which could create an instance of objects of class Course and of class Student, and call each instance method, giving "the appearance" of communication. As James Britt showed me, it is possible for A and B to communicate without being embeded in a common hierarchical object, but it is much less commonly done. Am I getting this right?