We're not looking here for things that will obsolete OO, things BeyondObjectOrientation. Rather merely improvements, or purported improvements, upon it. * DoubleDispatch, MultiMethods, MultipleDispatch * PrototypeProgramming * PredicateClasses * ActorLanguages * MetaObjectProtocol * CollectionOrientedProgramming (because CollectionsArentOo) * Delegation (see DelegationVsInheritance) ''NoWikiPage - which one of DelegationInheritance, DelegationIsInheritance or InheritanceAndDelegationAreEquivalent do you mean ;-)'' ** Any of the above will do; delete and refactor when cooked. :) ** ''Come now, man; take a stand! (BTW inheritance is not delegation ;-)'' *** I was trying to delegate that to you. :) And I agree, inheritance isn't delegation... * add your own ''Once you start modifying a paradigm, isn't that essentially the onset of a ParadigmShift which will move beyond it? Not that that is a bad thing, but I don't think you can separate the two unless the "improvements" are very slight'' ----- '''Multiple Inheritance Should Share Data Elements''' This may be more of an implementational change rather than a definition change, but in the few cases where I would want to use multiple inheritance I usually want to meld together two distinct sets of methods, but I want them to operate on the same data element. ''Do you mean like MixIn s in RubyLanguage? or traits in SqueakLanguage?'' ---- JanuaryZeroSix ObjectOriented, ObjectOrientedRefactored ---- CategoryObjectOrientation