[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: restarts and MI as possible omissions
| Date: Fri, 19 Apr 96 19:21:39 BST
| From: Jeff Dalton <jeff@aiai.ed.ac.uk>
|
| Alan Bawden wrote:
| * Even it we adopt the basic idea, conditions should be records
| that contain, in some field, a list of error types (or whatever
| we call them). Having conditions just _be_ such lists is too
| limiting and insufficiently abstract. [We we're back again to
| the questions of records, inheritance, and object systems.]
I'm not sure that I agree with this.
I agree that the lists should not be lists of symbols, since they are
globally unique and hence collision is a definite possibility.
However, a list of unique objects is a very simple and sufficient
implementation in the same style.
I can easily imagine
(make-condition <string>)
(condition-string <condition>)
where make-condition guarantees that a new condition object is
generated even when the strings are identical as being a sufficient
implementation.
The system would predefine variables for the built-in conditions
(define nfs-stale-handle (make-condition "NFS stale file handle"))
(define smb-lost-server (make-condition "SMB server connection lost"))
(define file-IO-error (make-condition "File I/O error"))
(define IO-error (make-condition "I/O error"))
(raise (list smb-lost-server file-IO-error IO-error) ...)
I'm not seriously advocating this proposal, but I am iterating
Alan's point that an actual MI implementation need not have a lot of
the baggage usually associated with inheritance.