From: Barry Margolin
Subject: Re: The Condition System (Re: The "Lisp World" mentality.)
Date: 
Message-ID: <22d4dfINNo1a@early-bird.think.com>
In article <············@life.ai.mit.edu> ···@idiap.ch writes:
>Actually, I can't tell from looking at CLtL/2 whether a CL
>implementation is required to handle all errors (even those that used
>to have undefined effects) via the condition system or not.
>
>More concretely, is a "conforming" CL implementation allowed, say, to
>dump core instead of signaling a division-by-zero or end-of-file
>condition?  Does the ANSI CL standard have a definitive answer?

If you compile your code with the SAFETY optimization set to 3, then I
believe all errors should be detected and a condition should be signaled.
If not, any situations that are described as having undefined consequences
can do anything, including generating wrong results, corrupting memory, and
dumping core.

End-of-file is always required to be detected.  Most of the input functions
have an EOF-ERROR-P parameter, which indicates whether EOF should signal an
error or return a specified value from the function.  Unfortunately, we
didn't specify the behavior of functions like YES-OR-NO-P, which don't take
EOF-related arguments.
-- 
Barry Margolin
System Manager, Thinking Machines Corp.

······@think.com          {uunet,harvard}!think!barmar