From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: *** X-Spam-Status: No, score=3.4 required=5.0 tests=BAYES_50,INVALID_DATE, MSGID_SHORT,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!husc6!seismo!mcvax!ukc!dcl-cs!craig From: craig@dcl-cs.UUCP Newsgroups: comp.lang.ada,comp.lang.misc Subject: Software Reuse -- do we really know what it is ? Message-ID: <371@dcl-csvax.comp.lancs.ac.uk> Date: Thu, 18-Jun-87 04:46:36 EDT Article-I.D.: dcl-csva.371 Posted: Thu Jun 18 04:46:36 1987 Date-Received: Sat, 20-Jun-87 09:25:12 EDT References: <8706160502.AA26398@ucbvax.Berkeley.EDU> Reply-To: craig@comp.lancs.ac.uk (Craig Wylie) Distribution: world Organization: Department of Computing at Lancaster University, UK. Xref: utgpu comp.lang.ada:369 comp.lang.misc:440 List-Id: There have been a couple of articles recently on Software Reuse and its likely acceptance by Defence Contractors. In considering Software Reuse in general, not just with reference to Ada and DoD, do we know what it is ? The scale of software that Ada allows the programmer to reuse seems to be primarily that of the package (in Modula-2 the Module). Is this sufficient? If we leave aside for the time being the question of whether Ada is an object oriented language and accept that if it isn't then you can do a reasonably good job faking it, reuse in Ada seems to be stuck at the level of the Abstract data type. Furthermore the lack of any easy (or apparent) way to derive WHAT an Ada program is doing rather than HOW it is doing it , does put a large amount of the responsibility for recovering reusable components on the programmer. In summary I would like to offer a few statements for discussion to see if we can clarify reuse. 1. We don't really know what it is. 2. It probably isn't a thing at all, but rather a collection of things depending on the scale at which the reuse is to take place. 3. Languages such as Ada and Modula-2, and imperative languages in general are unsuitable for writing reusable software because of their concentration on the HOW rather than the WHAT. 4. Reuse of Design isn't considered at all by any current applications language. 5. Nobody can force programmers to write good reusable code. 6. Even if they do write reusable code how the **** do we ever find it again so that we can reuse it ? All responses appreciated. Craig. -- UUCP: ...!seismo!mcvax!ukc!dcl-cs!craig| Post: University of Lancaster, DARPA: craig%lancs.comp@ucl-cs | Department of Computing, JANET: craig@uk.ac.lancs.comp | Bailrigg, Lancaster, UK. Phone: +44 524 65201 Ext. 4476 | LA1 4YR