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.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Received: by 2002:aed:3b56:: with SMTP id q22mr7670777qte.345.1590745428128; Fri, 29 May 2020 02:43:48 -0700 (PDT) X-Received: by 2002:a9d:6647:: with SMTP id q7mr4998792otm.329.1590745427695; Fri, 29 May 2020 02:43:47 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!news.gegeweb.eu!gegeweb.org!usenet-fr.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 29 May 2020 02:43:47 -0700 (PDT) In-Reply-To: <188c7ade-b9ce-4bd7-8752-64e0c8a3a0f2@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: google-groups.googlegroups.com; posting-host=2a01:cb04:46:ab00:15f4:2a58:f8cd:915; posting-account=F4OyugoAAABQod8iTn6AU7wMocsaGOvw NNTP-Posting-Host: 2a01:cb04:46:ab00:15f4:2a58:f8cd:915 References: <50711230-5b14-4278-b9d8-d197bbe3c93b@googlegroups.com> <9320040f-5486-4d1e-847d-f81b0a59fcfa@googlegroups.com> <188c7ade-b9ce-4bd7-8752-64e0c8a3a0f2@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <94b7b004-6d12-4586-b1d0-cb2a21ac52f0@googlegroups.com> Subject: Re: Ada++ From: raph.amiard@gmail.com Injection-Date: Fri, 29 May 2020 09:43:48 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Xref: reader01.eternal-september.org comp.lang.ada:58859 Date: 2020-05-29T02:43:47-07:00 List-Id: Le vendredi 29 mai 2020 11:23:22 UTC+2, fabien....@gmail.com a =C3=A9crit= =C2=A0: > On Friday, May 29, 2020 at 8:06:34 AM UTC+2, J-P. Rosen wrote: > > Please provide a use case showing how these features are > > necessary/important. >=20 > https://github.com/alire-project/alire/blob/dfa1e1e8029dee2959742b73ed8a0= fc96e22c8de/src/alr/alr-commands-index.adb#L171 Or in GNAT: https://github.com/aosm/libstdcxx_SUPanWheat/blob/02812415a478d= 43bcc37a17bb779fcab146fbe4c/libstdcxx/gcc/ada/snames.adb#L59 Or in Libadalang: https://github.com/AdaCore/libadalang/blob/1cf553d5fc37317c670888f0893bc255= 60c85b7b/ada/extensions/src/libadalang-env_hooks.adb#L47 Those are just two examples on the top of my mind. Every time you want to e= mbed a multi line string in an Ada app you need to go through this frankly = annoying gymnastics. This is also annoying for compiler writers. In Libadalang we need to recogn= ize those as special cases because they can create comb trees of unbounded = depth. > They are totally useless. [Embedding was never a good idea, embedded SQL, embedded machine code etc.] Demonstrably not. Anyway those kind of blanket statements tends to be false= in general, I hope you can see that there are many legitimate use cases fo= r this, and that the fact that you did not need it doesn't mean it's useles= s.