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. Taivalsaari, A., Object-oriented programming with modes . This creation of virtual class hierarchies makes method dispatching applicable even in cases where the effective class of an object may change over time. Object-oriented programming with modes . The modes approach proposes an extension to the static class structure by including the logical states of an object, modes, as part of the interfaces of the class.