U.S. Pat. No. 5,768,588 (Endicott, et al.) for Efficient Method Router That Supports Multiple Simultaneous Object Versions describes the implementation of the New Object Model (NOM), which is the underlying object data structures and run time support that can be used to implement object oriented languages such as Smalltalk and C++, in particular, in an interactive environment.