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=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,154942e4f1d1b8e9 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!proxad.net!proxad.net!newsfeed.arcor.de!news.arcor.de!not-for-mail Date: Tue, 13 Dec 2005 21:43:46 +0100 From: Georg Bauhaus Organization: future apps GmbH User-Agent: Debian Thunderbird 1.0.2 (X11/20051002) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Dynamically tagged expression required References: <2852224.m2vuDFxfOX@linux1.krischik.com> <3818406.kEZhMvudHC@linux1.krischik.com> <3610380.mzgl1UEuzs@linux1.krischik.com> <3960599.EjDTT3E5sO@linux1.krischik.com> In-Reply-To: <3960599.EjDTT3E5sO@linux1.krischik.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Message-ID: <439f327b$0$9631$9b4e6d93@newsread2.arcor-online.net> NNTP-Posting-Date: 13 Dec 2005 21:43:40 MET NNTP-Posting-Host: 64cab85a.newsread2.arcor-online.net X-Trace: DXC=EF5_4O@;9i9h^:`T28h7Qg[50F7T5IO2 X-Complaints-To: usenet-abuse@arcor.de Xref: g2news1.google.com comp.lang.ada:6872 Date: 2005-12-13T21:43:40+01:00 List-Id: Martin Krischik wrote: >> map_t m; >> //... >> m[k] = e; >> m.erase(k); >> >>and in Ada you say: >> >> M : Map; >>begin >> --... >> M.Include (K, E); >> M.Exclude (K); > > > It's the interface. i.E. The STL cursors tries to mimic the C pointer > behavior. Pointer arithmetic is low-level in my eyes. OTOH, Ada containers, too, have a number of high level operations, for example Intersection of sets, Floor... No visible cursors involved. I believe you don't have this in STL's set<>, instead there are generic algorithms. > The OCL rather tries to mimic a simple database. And databases are more high > level then pointers in my eyes. I think the plan for Ada.Containers is to go on working on generic algorithms. If a container doesn't provide a high level operation that is likely used frequently, it can be provided either using a generic algorithm, or, maybe, by extending the container type.