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,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 2002:a24:52ca:: with SMTP id d193-v6mr328549itb.48.1530769767958; Wed, 04 Jul 2018 22:49:27 -0700 (PDT) X-Received: by 2002:aca:f495:: with SMTP id s143-v6mr1062907oih.7.1530769767747; Wed, 04 Jul 2018 22:49:27 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!border1.nntp.ams1.giganews.com!nntp.giganews.com!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.70.MISMATCH!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.am4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!u78-v6no2343568itb.0!news-out.google.com!z3-v6ni2412iti.0!nntp.google.com!u78-v6no2343566itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Wed, 4 Jul 2018 22:49:27 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=194.9.244.34; posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S NNTP-Posting-Host: 194.9.244.34 References: <856189aa-fa00-4960-929e-174f352310ad@googlegroups.com> <2718c8d4-5f35-4fd8-a1aa-1e60069a7a5d@googlegroups.com> <39fce60c-9f56-42fb-b679-fa08810b00ee@googlegroups.com> <3701bf07-89a5-4cb0-a704-5aebb589ca79@googlegroups.com> <2f5e4ce0-94e8-4b94-9da7-045ec90a9b22@googlegroups.com> <18554067-1382-4b43-a832-2d27aa5117d7@googlegroups.com> <8dc19505-b68a-403c-a164-f1de1864f3f1@googlegroups.com> <559657f8-bbf4-4a70-9449-f85bc98d6c6b@googlegroups.com> <590d4672-4aef-42a5-823c-57ccd291115a@googlegroups.com> <8de6b5ba-25ab-4d46-b80c-1544f43a9b05@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Teaching C/C++ from Ada perspective? From: Maciej Sobczak Injection-Date: Thu, 05 Jul 2018 05:49:27 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Received-Bytes: 5113 X-Received-Body-CRC: 2721621460 Xref: reader02.eternal-september.org comp.lang.ada:53637 Date: 2018-07-04T22:49:27-07:00 List-Id: > > You can implement the same concept in some other way, for example with = the use of relational database as a backend, but AARM still does not define= the functionality of such library or why it would be any better. It might = as well be as dumb as a plain set of files. >=20 > Why should it? Because AARM does not put any requirements on it. And because C++ does not put any restrictions on how how this is done on th= e C++ side, we are again at level ground. That is, this hypothetical possib= ility that you described (and that no vendor cared to reap during the last = 30 years) does not make Ada any better language than C++ (in this particula= r regard). > The language should merely offer a possibility to=20 > implement and maintain such a library in a reasonable and effective way. Both Ada and C++ do. Both languages equally fail to deliver on this point. > > And ironically, for a large-scale system, I would not trust anything el= se than a dumb set of files. >=20 > Huh, did you checked your file system recently? It's not about storage, it's about modularity of the tool set. Compiling is= not the only thing I want to do to with the source code. I need reliable c= onfiguration management, too, and most often than not, it is imposed on me = independently on the language. Like, say, I'm told to use Git. It does not = matter whether I like Git or not, but what does matter to me is whether I c= an use it seamlessly. I need to run an independent static analysis tool, to= o, and if my source lives in some nebulous "library" and needs to be regene= rated only so that I can run SA on it, then not only this is a burden, but = also raises tool qualification issues in the rigorous environment of safety= critical processes. I also need a UML tool to reverse-engineer the model, = a code generation scripts for some selected parts of the code, and so on, y= ou can extend this story indefinitely. All this is possible only when the tools are based on the same common denom= inator, which is a set of dumb files. The dumber, the better. I have worked with a library-based tool some years ago, it was called Power= Builder. I still have nightmares. > For multiple decades people failed to make precompiled headers working, And after so many decades of language development the leading Ada compiler = fails to deliver on the "semantic" promises in the area of managing large (= 4 short files, actually...) codebase. > If AdaCode had so much time and so many caffeinated=20 > workers, just 1% of those, then GNAT would have a library and everything= =20 > else! Perhaps. But it didn't and it doesn't. And today, when I'm trying to convin= ce people to use Ada, I will refer to many other arguments, but not the one= that Ada will be a silver bullet for solving their large-scale physical de= sign issues. Such arguments fail even the basic, superficial scrutiny. --=20 Maciej Sobczak * http://www.inspirel.com