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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,7ee10ec601726fbf X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-10-31 11:37:33 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!netnews.com!xfer02.netnews.com!newsfeed1.cidera.com!Cidera!sjcppf01.usenetserver.com!usenetserver.com!news-west.rr.com!lsnws01.we.mediaone.net!typhoon.san.rr.com!not-for-mail Message-ID: <3BE05304.5AB6862D@san.rr.com> From: Darren New Organization: Boxes! X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: why not References: <3BC5D730.DA950CC7@boeing.com> <9q4pa7$1ad$1@nh.pace.co.uk> <3BC6ACC8.23EF21BC@free.fr> <3BC71F54.1FFE78FA@boeing.com> <1KGx7.26476$ev2.35117@www.newsranger.com> <3BC7AD82.2A0CCCD4@acm.org> <9qhiqr$af0$1@nh.pace.co.uk> <1nDC7.180$6S7.92255364@newssvr11.news.prodigy.com> <9rjsak$bp3$1@nh.pace.co.uk> <9rmhb9$o1b$1@nh.pace.co.uk> <3BDEF0FE.B55FED9E@san.rr.com> <9rmuqi$es$1@nh.pace.co.uk> <3BDF1F13.4B99361C@san.rr.com> <9rnbtv$5i4$1@nh.pace.co.uk> <3BE03E54.57E0E6C8@san.rr.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Wed, 31 Oct 2001 19:37:54 GMT NNTP-Posting-Host: 66.75.151.160 X-Complaints-To: abuse@rr.com X-Trace: typhoon.san.rr.com 1004557074 66.75.151.160 (Wed, 31 Oct 2001 11:37:54 PST) NNTP-Posting-Date: Wed, 31 Oct 2001 11:37:54 PST Xref: archiver1.google.com comp.lang.ada:15500 Date: 2001-10-31T19:37:54+00:00 List-Id: Matthew Heaney wrote: > > I think everyone is pretty much agreeing that what's needed are lists > > and maps, both task safe and efficient versions. The rest is just > > details. ;-) > > We certainly do NOT agree that data structures should be "task safe." Sorry. I meant to say that versions that are task safe are needed in addition to versions that are not task safe. Not that the only versions should be task safe. And not that only one task-safe version is needed. > If a > user needs a data structure to work in the presence of multiple threads, > then he needs to build those semantics himself using other primitives > provided by the language. Well, I figured there'd be the unsafe version (the "efficient version" above) and a safe version, like a protected wrapper for the unsafe version. Of course, if something even more complex is needed, then sure, it can be built. > > No question. But then it's harder to precisely specify what the behavior > > is without saying "it behaves like this implementation." > > You need to specify time and space semantics for any abstraction. This is a > solved problem. Right. It seems like you've misunderstood what I was trying to say. I was simply saying that trying to specify the time, space, and result semantics of the Booch components would be pointless if you can just point at the implementation and say "do this." If you're going to make a more abstract interface that can be implemented in a variety of ways, it's easier to specify the time, space, and semantics of the operations on a more simple interface than it is to try to deduce them from an existant implementation as complex as Booch. > > > Since apparently C++ has succeeded in including a similar library in its > > > standard, I wouldn't think the task is either impossible or totally > > > undesirable. I'd just favor a more gradual approach. > > > > But have they succeeded? It took years before any of the STL > > implementations were compatible and correct, IIRC. > > FUD. Of course they succeeded. C++ is vastly simpler to use now that the > STL is part of the standard. Um, I meant more like "how long did it take all the implementations of STL to actually match the spec." Not that *now* it doesn't match, but that just because it was in the standard for C++ didn't mean you could rely on it. I.e., as another poster said, people were willing to use buggy STLs, which they might not be willing to use in Ada. -- Darren New San Diego, CA, USA (PST). Cryptokeys on demand. Sore feet from standing in line at airport security checkpoints: Jet Leg.