comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@merv.cs.nyu.edu (Robert Dewar)
Subject: Re: Waiver question
Date: 1997/05/02
Date: 1997-05-02T00:00:00+00:00	[thread overview]
Message-ID: <dewar.862579609@merv> (raw)
In-Reply-To: 1997May2.063334.1@eisner


Larry said

<<I do not understand why you feel the default should be task-unsafe.
The general trend in Ada seems to be that safeguards are enabled by
default and disabled by explicit statement.>>

I don't think that's quite the right principle. Ada defaults to unsafe
if for a great majority of implementations, being safe would be too
costly or otherwise infeasible.

I actually think that the decision in Ada 95 is just right, and reflects

this principle.

For unpacked records, on most architectures, it is reasonable to default
to task safe -- yes it costs on the Alpha, but that is because the Alpha
made a bad architectural choice -- and that choice has a penalty here.
The judgment that the choice was a bad one seems to be borne out by the
fact that Digital is "fixing" it.

On the other hand, for packed records, on nearly all architectures,
guaranteeing task safety by default would pretty much wipe out the
effectiveness of packing. This was a major hole in Ada 83 (where
independence was required by the language even for packed records,
but luckily not tested for, and hence entirely ignored except by
language lawyers).

For an in-depth discussion of the independence issue, see Norman
Schulman's Thesis on "Semantics of Shared Variables in Programming
Languages" (or something like that -- from NYU -- I was his advisor).

Little information tidbit: Norman Schulman's wife is the well known
Canadian journalist who recently wrote the book "Red China Blues"
on her experiences in China.





  reply	other threads:[~1997-05-02  0:00 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-04-18  0:00 Waiver question Ken Garlington
1997-04-19  0:00 ` Tom Moran
1997-04-20  0:00 ` Robert Dewar
1997-04-21  0:00   ` Ken Garlington
1997-04-22  0:00     ` Ken Garlington
1997-04-23  0:00       ` Corey Minyard
1997-04-24  0:00         ` Richard Kenner
1997-04-28  0:00         ` Larry Kilgallen
1997-04-28  0:00           ` Corey Minyard
1997-04-29  0:00             ` Laurent Guerby
1997-04-30  0:00               ` Corey Minyard
1997-04-29  0:00             ` Robert Dewar
1997-04-29  0:00             ` Kaz Kylheku
1997-04-29  0:00           ` Richard Kenner
1997-04-30  0:00             ` Robert A Duff
1997-05-01  0:00               ` Kaz Kylheku
1997-05-02  0:00                 ` Robert A Duff
1997-05-02  0:00                   ` Larry Kilgallen
1997-05-02  0:00                     ` Robert Dewar [this message]
1997-05-02  0:00                     ` Robert A Duff
1997-05-02  0:00                       ` Larry Kilgallen
1997-05-03  0:00                         ` Robert A Duff
1997-05-03  0:00                           ` Larry Kilgallen
1997-05-04  0:00                             ` Robert Dewar
1997-05-04  0:00                         ` Robert Dewar
1997-05-06  0:00                     ` John M. Mills
1997-04-30  0:00             ` Robert Dewar
1997-05-01  0:00               ` Larry Kilgallen
1997-05-07  0:00                 ` Bad .diff files in gnat-3.09 in Linux Benoit Jauvin-Girard
1997-05-09  0:00                   ` Albert K. Lee
1997-04-29  0:00           ` Waiver question Robert Dewar
1997-04-23  0:00     ` Tarjei Jensen
1997-04-20  0:00 ` Steve Doiel
1997-04-20  0:00 ` Dean Runzel
1997-04-22  0:00   ` Ken Garlington
1997-04-21  0:00 ` Robert I. Eachus
1997-04-21  0:00   ` Robert Dewar
1997-04-22  0:00     ` Robert I. Eachus
1997-04-23  0:00       ` Robert Dewar
1997-04-22  0:00   ` Ken Garlington
1997-04-23  0:00     ` Robert S. White
1997-04-24  0:00     ` Robert Dewar
1997-04-24  0:00       ` Steve Vestal
1997-04-25  0:00         ` Robert I. Eachus
1997-04-25  0:00         ` Ken Garlington
replies disabled

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