[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: FILE-WRITE-DATE, FILE-AUTHOR



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)?