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=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,971aa11c293c3db1 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-07-18 08:03:29 PST Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!cyclone.bc.net!newsfeed.direct.ca!look.ca!newsfeed1.earthlink.net!newsfeed.earthlink.net!newsmaster1.prod.itd.earthlink.net!newsread2.prod.itd.earthlink.net.POSTED!not-for-mail Message-ID: <3B5598C2.DF1764AB@earthlink.net> From: "Marc A. Criley" Organization: Quadrus Corporation X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.2.14-5.0 i686) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: OO Zealotry horror stories (was Re: Ada the Best Language) References: <5be89e2f.0107170838.c71ad61@posting.google.com> <9j298c$hvq$1@newsg3.svr.pol.co.uk> <3B556EDE.18308230@earthlink.net> <3B558B6A.BABB32C2@ACM.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Wed, 18 Jul 2001 15:03:38 GMT NNTP-Posting-Host: 158.252.122.227 X-Complaints-To: abuse@earthlink.net X-Trace: newsread2.prod.itd.earthlink.net 995468618 158.252.122.227 (Wed, 18 Jul 2001 08:03:38 PDT) NNTP-Posting-Date: Wed, 18 Jul 2001 08:03:38 PDT X-Received-Date: Wed, 18 Jul 2001 08:01:00 PDT (newsmaster1.prod.itd.earthlink.net) Xref: archiver1.google.com comp.lang.ada:10157 Date: 2001-07-18T15:03:38+00:00 List-Id: Colin Paul Gloster wrote: > > Marc A. Criley wrote: > > "[..] The group I was in at a former employer > inherited a system that was written in Ada 83 and it had been dictated > that it be fully object-oriented. [..] > > Still, to be OO, the system _had_ to have inheritance and polymorphism, > and by God it did. Through the use of derived types, pointers, type > conversions, 'address-es of derived procedures, ad nauseum, this system > had all three components of an object oriented system[ eventually added > to it]. > > [..] > > The only real way out of this mess would've been to rewrite the system. > > Which we did. And which reduced its SLOC count by a third." > > So your new final version had a line count of two thirds that of the > hacked OO version; or two thirds that of the original given to the > team? The original _was_ the hacked OO version. Rereading my original post, I realize I was unclear (mea culpa!). The original system handed to us was the OO zealot inspired mess. In addition, some of these zealots had not surprisingly gotten C++ religion sometime during development, so some of the later subsystems (which ran as separate processes) had been written in that as well. Actually the 1/3 reduction in SLOC was just in Ada SLOCs, the C++ experienced 100% reduction (really! :-) The system subsequently ran faster, more reliably, and because of the straightforward design approach (and which was still being implemented in Ada 83) the learning curve was much shallower. In conjunction with a streamlined defect tracking and resolution process, and excellent execution logging, we were turning around bug fixes, with all procedural documentation, in under a day. Marc