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=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,53a10f13910610ed X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,53a10f13910610ed X-Google-Attributes: gid103376,public X-Google-Thread: f8c65,53a10f13910610ed X-Google-Attributes: gidf8c65,public X-Google-ArrivalTime: 1994-10-21 15:21:00 PST Newsgroups: comp.lang.ada,comp.lang.eiffel,comp.lang.modula2 Path: bga.com!news.sprintlink.net!hookup!news.kei.com!news.mathworks.com!europa.eng.gtefsd.com!howland.reston.ans.net!math.ohio-state.edu!cis.ohio-state.edu!news.sei.cmu.edu!ajpo.sei.cmu.edu!progers From: progers@ajpo.sei.cmu.edu (Pat Rogers) Subject: Re: class society? Message-ID: <1994Oct19.111721.21781@sei.cmu.edu> Sender: netnews@sei.cmu.edu (Netnews) Organization: SBS Engineering, Inc. References: <1994Oct15.005331.1172@muvms6> <5556@gec-mrc.co.uk> Date: Wed, 19 Oct 1994 11:17:21 EDT Xref: bga.com comp.lang.ada:7162 comp.lang.eiffel:2313 comp.lang.modula2:1684 Date: 1994-10-19T11:17:21-04:00 List-Id: In article <5556@gec-mrc.co.uk> paj@gec-mrc.co.uk (Paul Johnson) writes: > > >The nearest thing to a standard across Ada, Eiffel and C++ would be >the Booch libraries. Implementations now exist for all three languages >(although I have heard dire stories about the Ada implementation). There is a world of difference in the design of the C++ and Ada Booch components (Ada83, that is :). The Ada version uses an approach in which each data type (Bags, Queues, etc.) includes the representation code for the type -- that is, each form of queue implements a queue, each form of bag implements a bag, and so on. Multiply the number of forms by the number of abstractions and you're talking about a fair amount of code. The C++ version is not designed the same way. It uses aggregation to share representations across forms, cutting the code size dramatically. The hype surrounding the code reduction from the use of inheritance is just that. There's nothing wrong with the approach used by the C++ version -- it is just different. There are no "dire problems" with the Ada version that result from the language. I prefer the C++ *design* for various reasons, but it is mostly not a function of the language. The Ada83 version could have been designed in largely the same manner. The Ada9X version should exhibit all the advantages of the newer (C++) design, as well as the advantages of a newer language design. (several :) ) Pat Rogers progers@ajpo.sei.cmu.edu Team Ada -- Pat Rogers, Team Ada progers@ajpo.sei.cmu.edu