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,FREEMAIL_FROM, FREEMAIL_REPLY autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,243dc2fb696a49cd X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news.glorb.com!border1.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!cyclone1.gnilink.net!gnilink.net!wn14feed!worldnet.att.net!attbi_s02.POSTED!53ab2750!not-for-mail From: "Jeff C r e e.m" Newsgroups: comp.lang.ada References: <1ec946d1.0409222224.6d86e038@posting.google.com> Subject: Re: Ada Popularity: Comparison of Ada/Charles with C++ STL (and Perl) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2180 X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-RFC2646: Format=Flowed; Original Message-ID: NNTP-Posting-Host: 24.147.74.171 X-Complaints-To: abuse@comcast.net X-Trace: attbi_s02 1095938602 24.147.74.171 (Thu, 23 Sep 2004 11:23:22 GMT) NNTP-Posting-Date: Thu, 23 Sep 2004 11:23:22 GMT Organization: Comcast Online Date: Thu, 23 Sep 2004 11:23:22 GMT Xref: g2news1.google.com comp.lang.ada:4009 Date: 2004-09-23T11:23:22+00:00 List-Id: "Matthew Heaney" wrote in message news:1ec946d1.0409222224.6d86e038@posting.google.com... > kevin.cline@gmail.com (Kevin Cline) wrote in message > news:... >> >> You can compare the implementations at >> http://www.geocities.com/kc0a/wordcount.html > > See also the latest version of the wordcount example, that compiles > against the Madison release of the AI-302 API: > > http://charles.tigris.org/source/browse/charles/src/ai302/examples/wordcount/ > > This should give you some idea of how things will work in Ada 2005. > > -Matt I took a quick look. What possible reason is there to procedeed all of those nested subprogram bodies by the specifications For example. (See inline comment below) Populate_Vector : declare -- -- As written, this line as absolutely no purpose -- procedure Append_To_V (C : Wordcount_Maps.Cursor); procedure Append_To_V (C : Wordcount_Maps.Cursor) is begin Append (V, C); end Append_To_V; N : constant Count_Type := Length (M); begin if Capacity (V) < N then Ensure_Capacity (V, N); end if; Iterate (M, Append_To_V'Access); end Populate_Vector; In the complete example that style represents 5 lines of code that add nothing to the program semantics or to the program readability. Of course it is early in the morning so perhaps I am missing something obvious.