Path: utzoo!attcan!uunet!hsi!stpstn!cox From: cox@stpstn.UUCP (Brad Cox) Newsgroups: comp.software-eng Subject: Re: Reuse and Abstraction (was: reu Message-ID: <5132@stpstn.UUCP> Date: 31 May 90 08:14:53 GMT References: <4979@stpstn.UUCP> <102100009@p.cs.uiuc.edu> <80449@tut.cis.ohio-state.edu> <19614@duke.cs.duke.edu> <80685@tut.cis.ohio-state.edu> <19760@duke.cs.duke.edu> <80884@tut.cis.ohio-state.edu> <19820@duke.cs.duke.edu> <80903@tut.cis.ohio-state.edu> <19848@duke Reply-To: cox@stpstn.UUCP (Brad Cox) Organization: Stepstone Lines: 34 In article <19848@duke.cs.duke.edu> crm@romeo.UUCP (Charlie Martin) writes: >Bruce Weide writes... >.The other major difference between a specification and an >.implementation, of course, is that the former says WHAT is computed, >.while the latter says HOW it is computed. Perhaps most computer >.scientists (at present) are also a bit uncomfortable with things that >.are not so procedural. But I can't accept that this is an inherent >.limitation of computer scientists. Let's educate ourselves. > >It is afulyy hard sometimes to educate people to write a specification >that doesn't express their idea of how the software is to be designed. >I agree with you: computer scientists should educate themselves. Couldn't it be that we're looking through the wrong end of the telescope with all this emphasis on mathematics? *Everybody* deals with with the distinctions between requirement, specification, and implementation, even common-sense individuals like plumbers, waiters, etc. And the common-sense meaning of these terms is precisely the meaning that I've been using. An implementation is *correct* if it complies to its *specification* within an acceptable tolerance. There's nothing mathematical about it. In fact, it is all so common sense that the primary intellectual challenge is trying to convince oneself that common sense really applies to software. But object-oriented technologies drive me precisely towards that conclusion, that is, assuming a software industrial revolution. For a wonderful treatise on this topic, read "Zen and the Art of Motorcycle Maintenance; An Inquiry into Values". It winds up being about a definition of *quality*, which is close to *correctness*. Won't repeat his arguments here...but really try to read this book! -- Brad Cox; cox@stepstone.com; CI$ 71230,647; 203 426 1875 The Stepstone Corporation; 75 Glen Road; Sandy Hook CT 06482