[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FILE-WRITE-DATE, FILE-AUTHOR
A good summary. I'd add another option:
d) Declare that they signal an error when they were actually
unable to determine the existance of the file. This is not
quite as satisfactory as item 'c', but is a reasonable holding
action until the error system proposal is adopted and attention
is given to standardizing on specific conditions and circumstances.
Date: 15 Dec 86 13:45 PST
From: masinter.pa@Xerox.COM
The error system proposal (aka the Condition System proposal) does not
at all address the issue of what functions might specify what errors, it
only provides a mechanism by which the type of error might be specified,
and for handling such conditions.
This is my attempt to summarize the issue you brought up:
"There are several operations in Common Lisp (e.g., PROBE-FILE,
DIRECTORY, OPEN) for which CLtL is vague about the behavior in the face
of lack of access rights, network failures, or transient conditions.
The alternatives are to
a) to declare that these conditions should be treated within the bounds
of the specified operation, e.g., that PROBE-FILE return as if the file
were not present, USER-HOMEDIR-PATHNAME, FILE-WRITE-DATE, FILE-AUTHOR
return NIL
b) to declare explicitly that the behavior of a Common Lisp
implementation in such conditions is "unspecified" or
"implementation-dependent"
c) to define conditions (e.g., INTERMITTENT-FILE-ERROR,
INSUFFICIENT-ACCESS-RIGHTS) which will be signalled when such conditions
arise, and, perhaps, some of the actions that should happen surrounding
such signals (e.g., that it should be possible to specify that
FILE-WRITE-DATE should just return NIL if it is not available, ect.)
- - - - - - - - - - - -
Independent of the merits of one proposal over another, are there any
other proposals or refinements of these? Other functions and situations
(besides FILE-WRITE-DATE, FILE-AUTHOR, PROBE-FILE, DIRECTORY, OPEN,
USER-HOMEDIR-PATHNAME)?