CVS difference for ais/ai-00226.txt

Differences between 1.1 and version 1.2
Log of other versions for file ais/ai-00226.txt

--- ais/ai-00226.txt	1999/12/10 01:13:30	1.1
+++ ais/ai-00226.txt	1999/12/13 20:24:23	1.2
@@ -117,3 +117,48 @@
+From: Randy Brukardt
+Sent: Thursday, December 09, 1999 6:25 PM
+> This seems to allow the infamous nasal demons effect in
+> some partitions, ...
+What the heck is a "nasal demon"? It sounds like some
+disease I catch at this time of year...
+From: Michael Yoder
+Sent: Friday, December 10, 1999 7:50 AM
+There are circles where this is a colloquialism which corresponds pretty
+well to Ada's notion of "erroneous."  It allegedly came from a note in which
+someone said, of a case where the action taken by the language was
+undefined, "The program can do anything it wants.  It can cause demons to
+fly out of your nose."  This eventually got compressed into "the nasal
+demons effect," meaning completely unpredictable run-time behavior.
+I think the language in question was C or C++, but I'd need to talk to the
+folk who gave me the phrase.
+From: Robert A Duff
+Sent: Friday, December 10, 1999 5:09 PM
+> I think the language in question was C or C++, but I'd need to talk to the
+> folk who gave me the phrase.
+I think the phrase comes from comp.std.c or some such.  The C standard
+has many things that are defined to be "unpredictable", which means
+more-or-less the same thing as Ada's "erroneous".  Causing demons to fly
+out of one's nose is one example of what an unpredictable program might
+do.  There are lots of folks who learn language semantics by trying
+things out, and assume that what one compiler does on one machine is the
+law.  The "nasal demons" idea was a colorful attempt to teach them
+In the Ada community, people say that erroneous programs can erase the
+hard disk, or cause the keyboard to catch fire.

Questions? Ask the ACAA Technical Agent