[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: consistency again




> Bruce McKenzie <bruce@trwlasd.com> suggested making the behaviour
> of receiving messages dependent on system state.

> Brook Conner <dbc@cs.brown.edu> showed how to do this in
> Self using dynamic inheritance.

This is a very good example of how to use dynamic inheritance. This
makes it as easy to vary the result of message lookup depending on
either global as on the individual object state.

An interesting paper I read which included different actions on
message reception depending on whether an object was idle or
executing another method ( they have single thread objects ) was:
  
  "An Effiecient Implementation Scheme of Concurrent Object-Oriented
   Language on Stock Multicomputers" by Yonezawa et al,
  in Fourth PPOPP, 1993, pages 218-228.

Their compiler simply generates several C++-like VTables and the
object switches between them as its state changes. This is another
case of trading memory for speed.

- Jecel