In article <Pine.LNX.4.21.0104240801510.847-100000 / localhost.localdomain>, Stephen White <spwhite / chariot.net.au> wrote: >On Tue, 24 Apr 2001, Phil Tomson wrote: > >> class Tool >> #methods to handle generic stuff common to PC and UNIX >> end >> >> class Tool_PC < Tool >> #methods do PC specific stuff >> end >> >> class Tool_UNIX < Tool >> #methods do UNIX related stuff >> end > >What about arranging it like this: > > class Tool_Generic > #methods to handle generic stuff common to PC and UNIX > end > > class Tool_PC < Tool_Generic > #methods do PC specific stuff > end > > class Tool_UNIX < Tool_Generic > #methods do UNIX related stuff > end > > if $PLATFORM == "PC" > class Tool < Tool_PC > end > else > class Tool < Tool_UNIX > end > end > >then you could just use class Tool. This is kind of an interesting way to do it, too, what would you call it, dynamic inheritance? Phil