Object-oriented programming with modes . Journal of Objectoriented programming, pages 25-32, June 1993. Whenever an instance satisfies the predicate of a class, it is a member of that class and the class is used to determine the instance s behavior. In his approach states are called modes . Class definitions are subdivided into mode specific sections.
Every section contains definitions of modespecific method variants.
Both approaches share a disadvantage with most other approaches which are not based on state diagrams. Journal of ObjectOriented Programming, pp. A further justification for method update can be found in the desire to tame dynamic inheritance. Dynamic inheritance has potentially unpredictable effects, due to the updating of shared state. Method update is one of these better behaved mechanisms, especially in the absence of delegation, as in our calculus.