Trygve Reenskaug (MVC inventer ) and Jim Coplien (Patterns/Hillside) developed the DCI paradigm as a way model code around the roles played by objects, rather than the concrete type (class) of each object.
Alan, of you are aware of DCI, what is your response to it?
It (or more specifically, Jim Coplien) claims to build on your vision of OOP, but also criticises "emergence" within the OO vision. (Personally, I think those problems are design issues apart from the OO model)
video: https://www.infoq.com/presentations/Reflection-OOP-Social
PDF: http://fulloo.info/Documents/RestoringFunctionAndFormToPatte...
Website: http://fulloo.info/