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?
ObjectOriented, ObjectOrientedRefactored