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.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,7d14d8f47ca035bf X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-04-17 00:32:03 PST Path: supernews.google.com!sn-xit-03!supernews.com!nntp.cs.ubc.ca!nntp-relay.ihug.net!ihug.co.nz!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!do.de.uu.net!newsfeed.esat.net!news.heanet.ie!Colin_Paul_Gloster From: Colin_Paul_Gloster@ACM.org (Colin Paul Gloster) Newsgroups: comp.lang.ada Subject: Re: Ada Generic vs. C++ Templates Date: 17 Apr 2001 08:27:42 GMT Organization: Dublin City University Message-ID: References: <9afpi0$irv$1@news.huji.ac.il> Reply-To: Colin_Paul_Gloster@ACM.org NNTP-Posting-Host: ns.dcu.ie X-Trace: kenraki.heanet.ie 987496062 10157 136.206.1.3 (17 Apr 2001 08:27:42 GMT) X-Complaints-To: news@kenraki.heanet.ie NNTP-Posting-Date: 17 Apr 2001 08:27:42 GMT User-Agent: slrn/0.9.5.3 (UNIX) Cache-Post-Path: ns.dcu.ie!unknown@tolka.dcu.ie X-Cache: nntpcache 2.3.3 (see http://www.nntpcache.org/) Xref: supernews.google.com comp.lang.ada:6937 Date: 2001-04-17T08:27:42+00:00 List-Id: In article , Pat Rogers wrote: ""Simon Wright" wrote in message news:x7v66gdw82g.fsf@smaug.pushface.org... > Colin_Paul_Gloster@ACM.org (Colin Paul Gloster) writes: > > > [..] The Booch Components [..] > > [..] Pre-Ada 95 it was written on page 192 of "The > > Design and Evolution of C++" [1] by Bjarne Stroustrup: > > "[..Grady Booch implemented the Ada [83] version of The Booch Components > > and he and Mike Vilot later implemented the C++ [of the time] version of > > The Booch Components. The Ada [83] version] is 125,000 [since you > > probably speak German I point out that 125,000 in English is equal to one > > hundred and twentyfive thousand (big); not one hundrend and twentyfive > > (small)] non-commented source lines compared to the C++ version's 10,000 > > [10000 not 10] lines - inheritance combined with templates can be a very > > powerful mechanism for organising libraries without loss of performance > > or clarity", referencing the second edition of "Object-oriented Analysis > > and Design with Applications" by Grady Booch. > > The C++ BCs I was given a copy of when I started maintaining the Ada95 > port have 29_000 non-comment source lines. The Ada95 port has 13_000 > non-comment source lines. Another point is that the Booch C++ design for the components is very -- repeat very -- different from the Ada design, so comparing sizes is difficult. It is not a matter of inheritance. There is in fact a lot of replication in the first design that he realized he could avoid, which has absolutely nothing at all to do with the language chosen. It is a matter of the second design benefiting from the first. Second, there is little inheritance in the C++ version. It is not the central design approach, as it would be in say Java or Eiffel. No one should conclude that inheritance is the central reason for the difference in size." It is peculiar that Bjarne Stroustrup said that the C++ version had 10 000 (non-comment?) source lines but Simon Wright has instead found nearly triple that excluding comments. The paper quoted from by Mike Vilot and Grady Booch did not give their sizes. Any one know what is going on?