Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!mips!spool.mu.edu!uunet!cimshop!davidm From: cimshop!davidm@uunet.UU.NET (David S. Masterson) Newsgroups: comp.object Subject: Re: A Hard Problem for Static Type Systems Message-ID: Date: 5 May 91 19:00:37 GMT References: <554@eiffel.UUCP> <1991Apr26.203642.17387@leland.Stanford.EDU> <556@eiffel.UUCP> <52166@nigel.ee.udel.edu> <1991May1.143831.2065@maths.nott.ac.uk> <1991May3.184332.28319@visix.com> <2488@m1.cs.man.ac.uk> Sender: davidm@cimshop.UUCP Distribution: comp Organization: Consilium Inc., Mountain View, California Lines: 25 In-reply-to: mario@cs.man.ac.uk's message of 4 May 91 15:39:18 GMT >>>>> On 4 May 91 15:39:18 GMT, mario@cs.man.ac.uk (Mario Wolczko) said: Mario> Indeed. One of the main ideas behind inheritance is that you leave Mario> some things open so that classes may be reused in unanticipated ways, Mario> ie you are building components to assist in the solution of problems Mario> you do not even know about yet! Hmmm. Interesting way of looking at inheritance and nothing wrong with it. Just curious, though (and this may be very related to the question at hand), do most people use inheritance to build down from some underspecified level to something more specific to the problem at hand or do most people build up from some highly specific to something that can be more easily generalized to later problems? If you say either-or (depending on the circumstances), what are the circumstances that make you choose one over the other? I think people will find that the answers to this will show the differences in how people attack problems and that these differences have led to static versus dynamic specification of problems. -- ==================================================================== David Masterson Consilium, Inc. (415) 691-6311 640 Clyde Ct. uunet!cimshop!davidm Mtn. View, CA 94043 ==================================================================== "If someone thinks they know what I said, then I didn't say it!"