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=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,7ee10ec601726fbf X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-10-28 01:25:15 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!jfk3-feed1.news.digex.net!dca6-feed2.news.digex.net!intermedia!newsfeed1.cidera.com!Cidera!cyclone1.gnilink.net!spamfinder.gnilink.net!typhoon2.gnilink.net.POSTED!not-for-mail Message-ID: <3BDBC0DC.5080005@mail.com> From: Hyman Rosen User-Agent: Mozilla/5.0 (Windows; U; Win 9x 4.90; en-US; rv:0.9.5+) Gecko/20011027 X-Accept-Language: en-us MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: is Ada dying? References: <3BC264B4.EBB8238@worldnet.att.net> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Date: Sun, 28 Oct 2001 08:25:05 GMT NNTP-Posting-Host: 151.202.54.248 X-Complaints-To: business-support@verizon.com X-Trace: typhoon2.gnilink.net 1004257505 151.202.54.248 (Sun, 28 Oct 2001 03:25:05 EST) NNTP-Posting-Date: Sun, 28 Oct 2001 03:25:05 EST Xref: archiver1.google.com comp.lang.ada:15309 Date: 2001-10-28T08:25:05+00:00 List-Id: James Rogers wrote: > Yes. Let's all use a language with common constructs like the > following: > > float (*(*f)())(); > > This is "simple" C syntax for a pointer to a function returning a > pointer to a function returning a float. I could go "nyah nyah" and point out that until Ada 95 came along, Ada didn't have pointers to functions. And functions returning pointers to functions aren't all that common, so you don't see too many declarations like that in typical C or C++ code. That being said, I must agree that the declaration syntax of C (and therefore of C++) is a disasterous mistake, stemming from a misguided design goal. The point of C's declaration syntax is to make the declaration of a name mirror its use. That is, to actually retrieve the ultimate float from f, you can write float an_f = (*(*f)())(); See? It's an idea, just not a good one.