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.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,f82868bd08967223 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.15.41 with SMTP id u9mr24676232pbc.3.1321347644031; Tue, 15 Nov 2011 01:00:44 -0800 (PST) Path: h5ni56703pba.0!nntp.google.com!news1.google.com!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Booch Components question Date: Tue, 15 Nov 2011 10:00:55 +0100 Organization: cbb software GmbH Message-ID: References: Reply-To: mailbox@dmitry-kazakov.de NNTP-Posting-Host: FbOMkhMtVLVmu7IwBnt1tw.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: 40tude_Dialog/2.0.15.1 X-Notice: Filtered by postfilter v. 0.8.2 Xref: news1.google.com comp.lang.ada:18927 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Date: 2011-11-15T10:00:55+01:00 List-Id: On Mon, 14 Nov 2011 17:18:14 -0600, Randy Brukardt wrote: > "Simon Wright" wrote in message > news:m28vnlb9ry.fsf@pushface.org... > ... >> If anyone has objections/suggestions, now would be a good time to raise >> them; thanks in advance. > > First, if someone needs *simple* components, they are best served by using > the Standard ones added in Ada 2005. That presumes standard containers "simple." (:-)) > OTOH, the name "list" seems highly confusing. "List" seems to have gained a > fairly standard meaning in the use of containers, and I'm not surprised that > most people look there first. Having something that works rather differently > with that name is asking for trouble. Hmm, what do you mean? The BC's list looks pretty much like list to me. > OT3H :-), if people move to the Standard containers as we would hope, it > doesn't really pay to maintain alternatives at all. It always does because there cannot be a universal container library, at least in Ada in its present state: 1. The requirements are contradictory. Contradictions are preprogrammed by language weaknesses, e.g. task safety of containers necessarily costs performance and results in awful interfaces etc. 2. Many standard structures (falsely called containers) require specialization in order to be used, e.g. trees, lists, graphs. The nature of this specialization makes it easier to design such structures from scratch. 3. There exist different attitudes towards container interfaces, I mean usage of generics, access types, helper types, helper routines. People like it different. I don't like list comprehension, others do like it, etc. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de