comp.lang.ada
 help / color / mirror / Atom feed
From: Keith Thompson <kst@cts.com>
Subject: Re: Ada safety road   Was: Which is right ...
Date: 1999/06/08
Date: 1999-06-09T00:01:16+00:00	[thread overview]
Message-ID: <yeclndu44z8.fsf@king.cts.com> (raw)
In-Reply-To: wcc674yh8ut.fsf@world.std.com

Robert A Duff <bobduff@world.std.com> writes:
[...]
> There are few enough erroneous cases in Ada, that it would have been
> reasonable to spell it out in a long phrase every time.  Something like,
> "If <RM-ese for dangling pointer>, the program is incorrect.  The
> implementation is not required to detect this error, neither at compile
> time nor at run time.  If this error occurs, execution is totally
> unpredictable."  And then put some verbiage in chapter 1 about how awful
> "totally unpredictable" really is.

The folks over in comp.std.c have a good term term for this: "nasal
demons".  This originated when someone observed that when the compiler
encounters a construct with undefined behavior, it is legal for it to
make demons fly out of your nose.  See also the entry for "nasal
demons" in The Jargon File and/or _The New Hacker's Dictionary_.

Note that there's no implication that the compiler is *required* to
make demons fly out of your nose.

It's important to remember that one possible consequence of undefined
behavior (or erroneous execution) is for the implementation to
silently do exactly what you naively expected it to do.  This is often
the nastiest possibility, since any problems may not show up until
years later.

This is why the authors of Ada (both 83 and 95) made such an effort to
minimize the number of cases where this can happen, and to clearly
document the cases that couldn't reasonably be avoided.

-- 
Keith Thompson (The_Other_Keith) kst@cts.com  <http://www.ghoti.net/~kst>
San Diego Supercomputer Center  <http://www.sdsc.edu>                 <*>
One of the great tragedies of ancient history is that Helen of Troy
lived before the invention of the champagne bottle.




  reply	other threads:[~1999-06-08  0:00 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-05-30  0:00 Which is right here - GNAT or OA ? Vladimir Olensky
1999-05-30  0:00 ` Florian Weimer
1999-05-31  0:00   ` Vladimir Olensky
1999-05-31  0:00     ` Robert Dewar
1999-06-05  0:00       ` Vladimir Olensky
1999-06-05  0:00         ` Vladimir Olensky
1999-06-05  0:00           ` Robert Dewar
1999-06-07  0:00             ` Ada safety road Was: Which is right Vladimir Olensky
1999-06-06  0:00               ` Larry Kilgallen
1999-06-07  0:00                 ` Keith Thompson
1999-06-07  0:00                   ` Hyman Rosen
1999-06-08  0:00                     ` Robert A Duff
1999-06-08  0:00                       ` Keith Thompson [this message]
1999-06-09  0:00                         ` Robert Dewar
1999-06-09  0:00                           ` Tucker Taft
1999-06-09  0:00                             ` Robert Dewar
1999-06-09  0:00                         ` dennison
1999-06-09  0:00                           ` Entamology of "Nasal Demons" dennison
1999-06-08  0:00                       ` Ada safety road Was: Which is right Robert Dewar
1999-06-09  0:00                       ` dennison
1999-06-08  0:00                   ` Robert A Duff
1999-06-08  0:00                   ` Robert Dewar
1999-06-07  0:00                     ` Keith Thompson
1999-06-08  0:00                     ` Robert A Duff
1999-06-14  0:00                   ` Ada safety road Franco Mazzanti
1999-06-15  0:00                     ` Franco Mazzanti
1999-06-16  0:00                       ` Vladimir Olensky
1999-06-06  0:00               ` Ada safety road Was: Which is right Robert Dewar
1999-06-07  0:00                 ` Pascal F. Martin
1999-06-07  0:00                   ` Vladimir Olensky
1999-06-08  0:00                 ` Robert A Duff
1999-06-10  0:00               ` Peter Amey
1999-06-10  0:00                 ` Markus Kuhn
1999-06-11  0:00                   ` Vladimir Olensky
1999-06-12  0:00                     ` Robert Dewar
1999-06-12  0:00                       ` JP Thornley
1999-06-13  0:00                         ` Vladimir Olensky
1999-06-16  0:00                         ` William Dale
1999-06-19  0:00                           ` JP Thornley
1999-06-21  0:00                           ` Robert A Duff
1999-06-13  0:00                       ` Vladimir Olensky
1999-06-12  0:00                         ` Matthew Heaney
1999-06-13  0:00                           ` Vladimir Olensky
1999-06-13  0:00                         ` Robert Dewar
1999-06-13  0:00                           ` Vladimir Olensky
1999-06-13  0:00                           ` swhalen
1999-06-13  0:00                         ` Robert Dewar
1999-06-13  0:00                           ` Vladimir Olensky
1999-06-05  0:00         ` Which is right here - GNAT or OA ? Florian Weimer
1999-06-01  0:00   ` Tucker Taft
1999-05-30  0:00 ` Robert Dewar
1999-05-31  0:00   ` Vladimir Olensky
1999-05-31  0:00     ` Robert Dewar
1999-06-01  0:00   ` dennison
1999-05-31  0:00 ` David Botton
1999-06-01  0:00   ` dennison
1999-06-03  0:00 ` Matthew Heaney
replies disabled

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