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 10.58.185.135 with SMTP id fc7mr10376025vec.22.1405054519045; Thu, 10 Jul 2014 21:55:19 -0700 (PDT) X-Received: by 10.182.28.71 with SMTP id z7mr4756obg.16.1405054518803; Thu, 10 Jul 2014 21:55:18 -0700 (PDT) Path: buffer2.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!m5no931251qaj.1!news-out.google.com!gf2ni6igb.0!nntp.google.com!r10no823341igi.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 10 Jul 2014 21:55:18 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=76.20.246.65; posting-account=JqutYwoAAAC8IGXNQJ34VIRLaJ4LKhwz NNTP-Posting-Host: 76.20.246.65 References: <72b1318a-2eb6-4129-af9b-5bcfbb329c5b@googlegroups.com> <3889b2f4-b7c4-4fb0-9f37-6fc56400b1d7@googlegroups.com> <8OednWik9bvZACfORVn_vwA@giganews.com> <13bda335-c7a0-47e0-9127-d4c3e80751d9@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Ada's ranking of popularity at IEEE Spectrum From: theanalogmachine@gmail.com Injection-Date: Fri, 11 Jul 2014 04:55:18 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Xref: number.nntp.dca.giganews.com comp.lang.ada:187513 Date: 2014-07-10T21:55:18-07:00 List-Id: On Thursday, July 10, 2014 2:30:03 PM UTC-4, Nasser M. Abbasi wrote: > On 7/10/2014 1:18 PM, Nasser M. Abbasi wrote: >=20 >=20 >=20 > > >=20 > > One thing that can be done is concentrate on things that are unique >=20 > > or done much better in Ada. >=20 >=20 >=20 > Also things that can be done in more clear way. I like browsing >=20 > http://rosettacode.org sometimes and compare how different languages >=20 > do somethings. For example, looking at >=20 >=20 >=20 > http://rosettacode.org/wiki/Address_of_a_variable >=20 > "Demonstrate how to get the address of a variable and how to set the addr= ess of a variable" >=20 >=20 >=20 > Ada way: >=20 > ---------- >=20 > The_Address : System.Address; >=20 > I : Integer; >=20 > The_Address :=3D I'Address; -- read >=20 > for I'Address use 16#A100#; --- set >=20 > -------------------- >=20 >=20 >=20 > C++ way: >=20 > ----------- >=20 > int i; >=20 > void* address_of_i =3D &i; >=20 >=20 >=20 > "While C++ doesn't directly support putting a variable >=20 > at a given address, the same effect can be achieved by >=20 > creating a reference to that address: " >=20 >=20 >=20 > int& i =3D *(int*)0xA100; >=20 > ---------------------- >=20 >=20 >=20 > Anyone looking at the above 2 examples, can see that Ada is much >=20 > more clear. Actually anyone who does not even know Ada can >=20 > understand what the code does. Try that with the C++ version! >=20 >=20 >=20 > --Nasser I agree with the sentiment of promoting Ada's unique elements. For example,= discriminate records and the typing system are unrivaled and the like. How= ever, there are still many long standing problems that draw people away: * Why are record discriminates only limited to discrete types? * Why can't I use the regular string notation for unbounded_string types? * Why am I required to have msys/unix configure to use standard and basic p= ackages? It could just be my UNIX illiteracy, but I could not get GNATColl = to work under windows after a day and decided to just write my own hacked J= SON parser instead and gave up on connecting to databases...