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

Status of CL Condition Handling



Messages like the following are increasingly common these days.

    Date: Thu, 13 Apr 89  23:40:54 CDT
    From: John Gateley <Gateley@tilde.csc.ti.com>
    Subject: CLEH

    Could you send me a pointer to the latest description of CLEH? I have
    the 3/12/88 version of 'Condition System Revision 18'?
    I checked with David Bartley, our representative to X3J13 and he doesn't
    have anything more recent.

I really don't mind fielding this sort of question and have been doing so
for a long time, but since it has been asked a lot lately, I'm sending this
one-shot message just so there will be a recent message that people can
refer to when bringing others up to date.

----- Status of Condition Handling in Common Lisp, April 1989 -----

  The most current revision of the error handling document is
  Common Lisp Condition System, Version 18. This document was voted
  in to CL (in the same sense as CLOS and LOOP have been) and in my
  mind it occupies essentially the same status in the standard as 
  does CLtL. That is, it has been affected by and may be further
  affected by action of the Cleanup committee. The effect of its
  acceptance was not to cast it in concrete and prohibit change,
  but rather to establish that the default is that what it says will
  end up in the standard unless someone acts to change that default.
  Until the standard is finally voted in as a single unit, nothing is
  a certainty.

  Version 18 of the condition proposal document is available from
  AI.AI.MIT.EDU in the file named "COMMON;COND18 TEXT".

  A `sample implementation' is available from AI.AI.MIT.EDU in the
  file named "COMMON;COND18 LISP".  The sample implementation is not
  binding on the proposal text. It is merely `recommended reading'
  for anyone who is about to implement the proposal.

  With the advent of the proposal's adoption by X3J13 last fall, the
  the error handling subcommittee was effectively disbanded.  I seem
  to still be handling some of what would have been its business, but
  I no longer formally consider the group to be an active one or myself
  to be the moderator.  Changes since the proposal have been and are
  being handled by the Cleanup committee.

  The window is closed for most Cleanup changes which are feature
  additions. The effect of this is that CL-ERROR-HANDLING@SAIL.STANFORD.EDU
  is a dormant list.  As cleanup items are approved, no new central
  error handling document is being produced to minimize administrative
  overhead.  The approved items will be directly absorbed by the full
  standard document itself.

  At this point, the only changes being seriously considered by Cleanup
  are `essential functionality' that has slipped through the cracks,
  or `clarifications' and `bug fixes.'

  The cleanup items which are of most interest are:

    CLOS-CONDITIONS - Version 4, option INTEGRATE was adopted at the
      Mar-89 meeting.

    ERROR-CHECKING-IN-NUMBERS-CHAPTER - A proposal for what conditions
      should be signalled (and when) by the functions in the numbers
      chapter. This will be discussed at the next X3J13 meeting. Other
      proposals of similar kind may appear at that time as well.

    CONDITION-RESTARTS - A proposal for associating conditions with
      restarts. This has been a long-acknowledged weakness in the
      condition system.  This proposal will come up in some form at the
      next X3J13 meeting, but will probably change before it does.
      Some changes under consideration:
       - Eliminate the proposed COPY-CONDITION function
       - Eliminate SIGNAL-WITH-RESTARTS in favor of a change to
	 RESTART-CASE that makes it automatically create an association
	 when its first `argument' is a SIGNAL, WARN, ERROR, or CERROR
	 expression.
       - Change the syntax of WITH-CONDITION-RESTARTS to get 
	 condition-form and restarts-form as two arguments instead of
	 as one argument with funny syntax.

  These cleanup items are generally available via anonymous FTP from 
  ARISIA.XEROX.COM in the directories /clcleanup/pending/ and
  /clcleanup/passed/, depending on whether they are pending or passed.

  Cleanup items for which there is some interest but not yet any proposal
  are:

    CONDITIONS-PACKAGE - Some people think the LISP package (now the
      COMMON-LISP package, I guess, since a recent vote on issue
      LISP-PACKAGE-NAME) is too cluttered and that we should make a new
      package for some of the CONDITIONS stuff. (Many of the same people
      think the same about CLOS, by the way.)

    CONDITION-METACLASS - We've never specified the metaclass of
      conditions so right now you can really only safely mix together
      condition classes with other condition classes. People have
      expressed interest in doing other kinds of mixing, which would
      require knowing the metaclass of objects of class CONDITION.

  If this leaves unanswered questions about any of this and you are
  not an X3J13 representative, please direct them first to the X3J13
  rep from your organization. If you have no rep or if your rep can't
  answer your question (or if you are the rep and can't answer your own
  question :-), you can direct your queries directly to me if you don't
  consider them of broad interest and just want them handled privately.