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 X-Received: by 2002:ac8:24cd:: with SMTP id t13mr42158352qtt.298.1563637543694; Sat, 20 Jul 2019 08:45:43 -0700 (PDT) X-Received: by 2002:a05:6830:1316:: with SMTP id p22mr4369000otq.329.1563637543453; Sat, 20 Jul 2019 08:45:43 -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!b26no6807508qtq.0!news-out.google.com!a5ni1224qtd.0!nntp.google.com!b26no6807500qtq.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sat, 20 Jul 2019 08:45:43 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=47.185.223.245; posting-account=zwxLlwoAAAChLBU7oraRzNDnqQYkYbpo NNTP-Posting-Host: 47.185.223.245 References: User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: How to make Ada popular. Get rid of ";" at end of statement. From: Optikos Injection-Date: Sat, 20 Jul 2019 15:45:43 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Xref: reader01.eternal-september.org comp.lang.ada:56901 Date: 2019-07-20T08:45:43-07:00 List-Id: On Saturday, July 20, 2019 at 9:40:56 AM UTC-5, Stephen Davies wrote: > On Friday, 19 July 2019 22:42:00 UTC+1, Nasser M. Abbasi wrote: > > According to https://hackernoon.com/best-coding-languages-to-learn-in-2= 019-b49b49250a25 > >=20 > > ... I'd like to make a suggestion: Remove ";" from Ada. > >=20 >=20 > I don't see this as being a problem given the numerous popular > languages that do use semicolons. >=20 > But I do think that maybe Ada would be less off-putting to people > who know other languages if it adopted some constructs that are > now standard in nearly all languages, e.g.:- >=20 > Allow 0x, 0b and 0o for Hex, Bin and Octal numbers > (with an optional extra parameter in Integer_IO.Put) >=20 > Allow =3D=3D for equality, though obviously only allow :=3D for assignmen= t > (maybe make this the preferred form, similar to how > Mixed_Case took over from UPPER_CASE) >=20 > I also think that the annoying leading-space on Integer'Image is > off-putting to newbies too because it's those early programs where > you often just want to embed a number in an output string quickly. > Would it really be that hard to add a Trim_Image attribute or add > a Width parameter to Integer'Image? >=20 > Finally, not to be entirely negative, I realy like the new @ feature > and hope it makes people looking at Ada who are used to +=3D, etc > think "ooh, that's nice". None of these cosmetic syntax differences of historical opinion among the l= anguage families are what newbies find off-putting in Ada. What newbies find off-putting (and this is what I have heard time & time ag= ain for decades from C++ers who find C++ =E2=80=9Ceasier=E2=80=9D than Ada= =E2=80=94including at my alma mater university whose main language was Ada = from the mid-1980s to the early 2000s) is the plethora of compile-time rule= enforcement =E2=80=A2=E2=80=A2=E2=80=A2that require a language-lawyer memo= rization of the language international standard & its rationale instead of = something automated in the toolchain akin to fix-its in Xcode where the com= piler or IDE either in textual error message or even better by source-code = regeneration that is aware of =E2=80=A2all=E2=80=A2 the numerous hundreds o= f common pitfalls and the best-practice better design that actually compile= s by obeying all of Ada's semantic rules=E2=80=A2=E2=80=A2=E2=80=A2. It is= the semantic challenge, not the surface syntax. C++ in the early days thought of itself as Ada done right because it transf= erred this language-lawyer memorization problem-space into an obey-the-habi= tual-idioms problem-space by a network of C++ers in the know: e.g., RAII, = pimpl, the curiously-recurring template inheritance, the legend & lore hand= ed down in don't-do-that immense coding standards, and so forth.