comp.lang.ada
 help / color / mirror / Atom feed
From: Maciej Sobczak <see.my.homepage@gmail.com>
Subject: Re: C++0x and Threads - a poor relation to Ada's tasking model?
Date: Wed, 12 Aug 2009 07:51:38 -0700 (PDT)
Date: 2009-08-12T07:51:38-07:00	[thread overview]
Message-ID: <75dc1ce3-18d3-4e24-a91d-08be22dc1129@s15g2000yqs.googlegroups.com> (raw)
In-Reply-To: gnc585975lmscgmvat9avedckgs3du6pin@4ax.com

On 12 Sie, 14:25, John McCabe <j...@nospam.assen.demon.co.uk> wrote:

> >No standard can force anybody to provide implementations. Vendors will
> >do it if they will see a business opportunity in it.
>
> My point/question really was whether it will be acceptable for a C++
> compiler to NOT support the threading library (i.e. if a vendor
> chooses not to provide a bare board run-time system with built in
> threading).

Why not? If this is acceptable for their customers...
Note that the vendor can always sell a C++98 compiler naming it as
such and avoiding any accusations of wrongly using the C++ name on a
non-conforming product. They can even provide everything else as
"extensions" and still be OK.

It is somewhat like a question on whether an Ada vendor can today sell
the Ada compiler even if it does not implement interfaces, object-dot-
notation, etc.
Sure - just call it Ada95 and be explicit about it. This is actually
what we observe.

> It seems to me that Ada's model started off with a clean slate and was
> designed from the ground up whereas with C++ it's always been a case
> of "how can we bolt this on".

This is true and reflects the fact that operating systems evolved
faster than the language in this respect.

> As I mentioned earlier I've not read a huge amount about this yet, but
> I've seen little evidence that there are any standards proposed in C++
> to handle thread priorities, dispatching policies and so on.

Because the target is different. And because the C++ committee, unlike
the Ada one, feels a bit uncomfortable with the idea of *optionally
implemented* parts of the language.

If you need these features in C++, talk to your compiler and OS
vendor.
At the end, if you find an Ada compiler that offers these features on
a given OS, then apparently there is some API provided by the OS that
enables these features (and which API is being used by the Ada run-
time) and there is no reason not to benefit from them in C++ as well.

Of course there is always an argument that the use of these features
is portable in Ada and not portable in C++ (as there is no standard
API for them), but frankly - if you need *these* features, you are
targeting a very specific hardware/OS environment anyway and therefore
code portability is of lesser importance.

In this context I think that what the C++ committee did is very fair
and rational, as it addresses the overwhelming majority of users with
something that is simple to implement while putting perhaps some more
work on the minority that has very specific needs. It would be wrong
to do the other way round.

--
Maciej Sobczak * www.msobczak.com * www.inspirel.com

Database Access Library for Ada: www.inspirel.com/soci-ada



  reply	other threads:[~2009-08-12 14:51 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-11 15:30 C++0x and Threads - a poor relation to Ada's tasking model? John McCabe
2009-08-11 20:51 ` Maciej Sobczak
2009-08-12 12:25   ` John McCabe
2009-08-12 14:51     ` Maciej Sobczak [this message]
2009-08-12 15:56     ` REH
2009-08-12 16:59       ` John McCabe
2009-08-12 17:21         ` REH
2009-08-12 20:41           ` Robert A Duff
2009-08-12 21:15             ` REH
2009-08-13  1:28               ` Randy Brukardt
2009-08-13  2:08                 ` REH
2009-08-13  8:38                   ` Pascal Obry
2009-08-13  8:57                     ` Dmitry A. Kazakov
2009-08-13 11:32                       ` Pascal Obry
2009-08-13 12:28                         ` Dmitry A. Kazakov
2009-08-14  1:15                           ` Brian Drummond
2009-08-14 11:24                           ` Language checks (Was: C++0x and Threads - a poor relation to Ada's tasking model?) Jacob Sparre Andersen
2009-08-14 12:01                             ` Dmitry A. Kazakov
2009-08-14 13:33                               ` REH
2009-08-14 13:48                                 ` John McCabe
2009-08-14 14:51                                   ` John McCabe
2009-08-14 14:13                                 ` Dmitry A. Kazakov
2009-08-14 19:58                                   ` Language checks Robert A Duff
2009-08-15  0:10                             ` Language checks (Was: C++0x and Threads - a poor relation to Ada's tasking model?) Randy Brukardt
2009-08-14 13:10               ` C++0x and Threads - a poor relation to Ada's tasking model? Gautier write-only
2009-08-14 13:16                 ` REH
2009-08-12 21:24             ` REH
2009-08-13 13:51               ` John McCabe
2009-08-13 16:24                 ` REH
2009-08-14 11:09                   ` John McCabe
2009-08-14 13:00                     ` REH
2009-08-14 14:30                       ` John McCabe
2009-08-14 14:49                         ` REH
2009-08-14 14:54                           ` John McCabe
2009-08-14 15:35                             ` REH
2009-08-14 18:43                               ` Robert A Duff
2009-08-14 18:54                                 ` REH
2009-08-14 22:33                                   ` Robert A Duff
2009-08-15  1:15                                     ` REH
2009-08-15 14:24                                       ` Robert A Duff
2009-08-14 15:09                           ` Hyman Rosen
2009-08-14 15:12                             ` REH
2009-08-13 13:55           ` John McCabe
2009-08-13 16:45             ` REH
2009-08-14 11:14               ` John McCabe
2009-08-12 20:53         ` Maciej Sobczak
2009-08-11 23:53 ` jimmaureenrogers
2009-08-12  0:06   ` Jeffrey R. Carter
2009-08-12  7:26   ` Maciej Sobczak
2009-08-12  5:29     ` stefan-lucks
2009-08-12 15:00       ` Maciej Sobczak
2009-08-12  9:27     ` Ludovic Brenta
2009-08-12 15:14       ` Maciej Sobczak
2009-08-13 12:47         ` Peter C. Chapin
2009-08-13 13:57           ` John McCabe
2009-08-14  7:39           ` Maciej Sobczak
2009-08-14 11:13             ` John McCabe
2009-08-14 12:23               ` Dmitry A. Kazakov
2009-08-14 12:50                 ` John McCabe
2009-08-14 13:50                   ` Dmitry A. Kazakov
2009-08-14 13:58                     ` Niklas Holsti
2009-08-14 14:17                       ` Dmitry A. Kazakov
2009-08-14 22:25                       ` Brian Drummond
2009-08-14 12:56             ` John McCabe
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox