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!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Teaching C/C++ from Ada perspective? Date: Fri, 6 Jul 2018 21:43:20 +0200 Organization: Aioe.org NNTP Server Message-ID: References: <856189aa-fa00-4960-929e-174f352310ad@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> <670baa25-a987-45a0-991f-ec3aa2878233@googlegroups.com> NNTP-Posting-Host: 3CrKQyqWAJZHy6zYVP/kUg.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.9.0 X-Notice: Filtered by postfilter v. 0.8.3 Content-Language: en-US Xref: reader02.eternal-september.org comp.lang.ada:53704 Date: 2018-07-06T21:43:20+02:00 List-Id: On 2018-07-06 20:51, Randy Brukardt wrote: > "Maciej Sobczak" wrote in message > news:670baa25-a987-45a0-991f-ec3aa2878233@googlegroups.com... >>> In any case, semantic coupling is many times more important than >>> compile-time coupling, since it causes actual maintenance problems. >>> Perhaps >>> focusing on that would make the differences more apparent??? >> >> So let's do focus on that. Is there some short example that you would like >> to present to demonstrate this point? > > Not off-hand; I shouldn't have wasted the time on this discussion in the > first place. > > But I'll say that examples involving empty packages and useless withs don't > really prove anything regardless of the language involved - they're not very > realistic. I'd suggest looking at examples of privacy (which Ada is very > strict about) and comparing to other languages (which I don't know well > enough to do myself). I would add that much depends on optimization. If the compiler looks into a body in order to perform certain types of optimization then no matter how excellent Ada's separation of interface and implementation is, it must recompile clients if the body was changed. But Ada will still beat others here, because for quick runs you can turn the optimization off being sure that when you turn it on, then due to the separation the optimized code will still work. It is a really a plague in C++: the debug version works and the release crashes. Never happened in Ada to me. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de