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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!nntp-feed.chiark.greenend.org.uk!ewrotcd!newsfeed.xs3.de!io.xs3.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Constructing by classwide type Date: Tue, 18 Apr 2017 13:57:09 -0500 Organization: JSA Research & Innovation Message-ID: References: <93d2cfb3-1518-4d99-8075-e636e1f32b5d@googlegroups.com> NNTP-Posting-Host: rrsoftware.com X-Trace: franka.jacob-sparre.dk 1492541830 31017 24.196.82.226 (18 Apr 2017 18:57:10 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Tue, 18 Apr 2017 18:57:10 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Response X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Xref: news.eternal-september.org comp.lang.ada:46592 Date: 2017-04-18T13:57:09-05:00 List-Id: "Alejandro R. Mosteo" wrote in message news:od5ins$drj$1@dont-email.me... ... > I've been under the same circumstances recently and wondered the same. I > hope you get some informed answers. Until date, I have noticed no > drawbacks and all the advantages you mention. I don't think there is AN answer. Unless you have to satisfy someone who is worshipping a the church of OOP, the best design is the one that works for your application, minimizes unnecessary coupling, and makes as many errors as possible detectable at compile-time. Use ALL of the features of Ada to get there, both OOP and non-OOP features. (Case completeness checks make a big difference in being able to modify non-OOP variant record types safely -- I find no obvious difference in maintainability between the Janus/Ada compiler [designed before OOP was a 'thing'] and the Claw Builder [a pure OOP design]. Indeed, incremental development is easier on Janus/Ada as usually one doesn't need to write as much code to get it to compile/run. Anyway, in programming design, there is no one right answer. Ada has a big toolbox, it makes sense to use it all. Randy.