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,97819f4f06661130 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,UTF8 Path: g2news2.google.com!news4.google.com!feeder.news-service.com!85.214.198.2.MISMATCH!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Generic Containers in Ada2005 Date: Wed, 09 Feb 2011 20:06:26 +0000 Organization: A noiseless patient Spider Message-ID: References: <1vw9tbt1xma5m.cvy6d03i25d1.dlg@40tude.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: mx03.eternal-september.org; posting-host="dFCm8HWntFqmDIilBLqEJQ"; logging-data="1848"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/jwT2boj1hZAFnXYzrc5eixCm11ZXnMDs=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (darwin) Cancel-Lock: sha1:MQhheZOEl4XjKE1gcJ2DpP/NuiA= sha1:4JQDeQIeT2541VtBkVcFh8mmEaU= Xref: g2news2.google.com comp.lang.ada:18115 Date: 2011-02-09T20:06:26+00:00 List-Id: Bryan writes: > Thanks for the links to the external libraries, I've downloaded the > Booch Components, but I'm not sure how to build and install the > library. Is there an installation guide that goes over the necessary > environment variables and steps? Just running running make does not > work, and I'm not sure what to do with gnat-booch.sh and gnat- > booch.conf. Oh dear. After all this time & I haven't thought of it from a new user's point of view. I've logged a bug report and assigned it to myself. I don't understand the gnat-booch.sh &c setup myself, that was Martin Krischik's work. The simplest way ahead from what you have (if you're using GNAT) is to include the BCs in the source path for your build - eg, $ gnatmake -gnat05 -I$HOME/bc-20090226/src foo.adb If you're already using GPRs, or if you're not using GNAT, include the sources (bc-yyyymmdd/src/*.ad?) in your compilation source path. > On Feb 9, 3:33 am, "Dmitry A. Kazakov" > wrote: >> I think that queue is a too specific container to be included into >> standard library. Depending on the number of concurrent peers >> accessing the queue ends, whether the queue has fixed size, whether >> elements are copied or referenced (e.g. statically allocated elements >> moved from queue to queue) the implementation and interface may >> sufficiently vary. > > Regarding concurrent peers, are the generic containers provided in the > Ada.Containers library thread-safe? No. Nor are the BCs. I believe that the Ada2012 effort includes synchronised queues (though the last I heard there was a serious problem). Personally I think Dmitry is right. Nothing to stop you using non-thread-safe containers as part of the implementation of somethin appropriate to your problem.