From: Jacek Generowicz
Subject: CL condition system resources
Date: 
Message-ID: <tyfisnjfzne.fsf@pcepsft001.cern.ch>
Our (very) local lisp users' group (<http://lisp.cern.ch>) is
organizing a little informal get-together to try to understand the
Common Lisp condition system. As none of us are masters of this corner
of the language, activities will be based around going through the
literature together and trying to build up a collective
understanding. And this is where we come across the first hurdle:
there's not much literature on the subject.

We are aware of

- CLHS Ch. 9

- CLtL2 Ch. 29

- KMP's papers at www.nhplace.com/kent/Papers/
  (can't seem to connect to them at the moment)

Could you suggest other resources that could be useful for such an
exercise ?

Anyone within striking distance of Geneva (Switzerland) would be very
welcome to attend, (particularly if already knowledgeable about the CL
condition system :-). Bidding for the preferred date is still open:
Tuesday 28 October or Thursday 30 October (2003). The idea is to
devote the whole working day, or the afternoon and early evening, to
the "workshop".


One of the big advantages of CL's condition system over the "error
handling" mechanisms available in other languages, is that handlers
are found before any unwinding is done, which allows for error
recovery as opposed to mere containment. Are there any other languages
(outside the Lisp family) which have such error _recovery_
capabilities ?

From: Frank A. Adrian
Subject: Re: CL condition system resources
Date: 
Message-ID: <H%3cb.183$uf2.39855@news.uswest.net>
Jacek Generowicz wrote:

> Are there any other languages
> (outside the Lisp family) which have such error recovery
> capabilities ?

Smalltalk systems have mechanisms that search up the stack for a handler
context (read stack frame) before the context is invoked.  The arguments to
the handler includes the error context, as well as the exception object,
and this context is able to be restarted, resumed, or returned from (with a
value).  In addition, the handler can also choose to pass on the search for
a handler (by returning false to a handling predicate), re-raise the same
exception, or raise a different one (all without unwinding the stack).  And
some of the systems had extensions to allow you to enable or disable
established handlers.  And, if you didn't like the way handlers handled
stuff, you could always use the primitives to roll your own behavior.  It
was like having a MOP for the exception and handling system.  All-in-all,
it's the one exception handling system I've seen that actually beat CL in
terms of functionality.

faa
From: james anderson
Subject: Re: CL condition system resources
Date: 
Message-ID: <3F704FC1.FFF01A6A@setf.de>
Jacek Generowicz wrote:
> 
> 
> One of the big advantages of CL's condition system over the "error
> handling" mechanisms available in other languages, is that handlers
> are found before any unwinding is done, which allows for error
> recovery as opposed to mere containment. Are there any other languages
> (outside the Lisp family) which have such error _recovery_
> capabilities ?

pl/1 (http://publibfp.boulder.ibm.com/epubs/pdf/ibm3lr10.pdf ch 16/17)

...
From: Paolo Amoroso
Subject: Re: CL condition system resources
Date: 
Message-ID: <87pthq2x1k.fsf@plato.moon.paoloamoroso.it>
Jacek Generowicz writes:

> Our (very) local lisp users' group (<http://lisp.cern.ch>) is
> organizing a little informal get-together to try to understand the
> Common Lisp condition system. As none of us are masters of this corner
[...]
> Could you suggest other resources that could be useful for such an
> exercise ?

- the relevant chapter of David Lamkins' "Successful Lisp" online
  book
- the comp.lang.lisp archive via Google Groups

Over the past few years I have saved a number of good comp.lang.lisp
articles about the condition system. The machine-readable version is
currently unavailable to me (i.e. it's stored on an old PC with video
card problems).

But I have printed most of the articles in the collection. If a search
of the comp.lang.lisp article turns out few interesting items, contact
me again. I may be able to provide you with a list of my articles
(only Subject, From and Date fields in the headers; no message ID,
sorry).


Paolo
-- 
Paolo Amoroso <·······@mclink.it>