Newsgroups: comp.lang.modula3 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!think.com!snorkelwacker.mit.edu!stanford.edu!leland.Stanford.EDU!leland.Stanford.EDU!craig From: craig@leland.Stanford.EDU (Craig Chambers) Subject: Re: Vague design question Message-ID: <1991Apr9.195017.1063@leland.Stanford.EDU> Sender: news@leland.Stanford.EDU (Mr News) Organization: AIR, Stanford University References: <1991Apr9.183433.26514@newross.Princeton.EDU> Date: Tue, 9 Apr 91 19:50:17 GMT Lines: 9 Dynamic inheritance ala Self would be a convenient mechanism to provide the changing behavior modes of the single debuggee object. The interface to clients would be something much along the lines of your second proposal, but the internal implementation would be more well organized and factored. Since M3 doesn't support dynamic inheritance, you could simulate it with a wrapper object whose single instance variable was changed from one internal state to another; the wrapper object forwards messages to the contained instance variable. -- Craig Chambers