Xref: utzoo comp.object:3307 comp.lang.eiffel:1530 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!dali.cs.montana.edu!uakari.primate.wisc.edu!samsung!uunet!bony1!richieb From: richieb@bony1.bony.com (Richard Bielak) Newsgroups: comp.object,comp.lang.eiffel Subject: Unification: Class=Type=Module Message-ID: <1991Apr23.142800.12215@bony1.bony.com> Date: 23 Apr 91 14:28:00 GMT Reply-To: richieb@bony1.UUCP (Richard Bielak) Organization: Bank of New York Lines: 25 One of the things I liked about "Object Oriented Software Construction" by B. Meyer, was the idea that a class is both a type and a module. This idea clears up the confusion as to whether inheritance extends or specializes. When a class is considered to be a type, inheritance specializes the type. The descendent type is type-compatible with fewer things, so it is more specialized. When a class is considered to be a module, inheritance adds more routines and attributes. Since the class can do more things it has been extended. I also like the "cleanness" and simplicity of this idea. I am curious whether other people think about this, and whether such "unification" has any disadvantages. ...richie -- *-----------------------------------------------------------------------------* | Richie Bielak (212)-815-3072 | Programs are like baby squirrels. Once | | Internet: richieb@bony.com | you pick one up and handle it, you can't | | Bang: uunet!bony1!richieb | put it back. The mother won't feed it. |