[Ecls-list] Compiler conditions

Juan Jose Garcia-Ripoll jjgarcia at users.sourceforge.net
Tue May 20 10:52:50 UTC 2008


On Tue, May 20, 2008 at 12:34 PM, Samium Gromoff
<_deepfire at feelingofgreen.ru> wrote:
> Namely, there was that Kent Pitman article mentioning ZetaLisp's
> "default handlers" in his 2001 "Condition Handling in the Lisp
> Language Family" paper [1].

Thanks for the reference. The notion of default handler, as explained
in the paper, is equivalent to my use of SIGNAL above, and it is
characterized as an idiom.

(handler-bind ((error
                 #'(lambda (c)
                     (signal c) ;resignal
                     ...default handling...)))
  ...body in which handler is in effect...)

"In effect, the Common Lisp idiom continues the signaling process but
without explicitly relinquishing control. If the resignaled condition
is unhandled, control will return to this handler and the default
handling will be done. If, on the other hand, some outer handler does
handle the condition, the default handling code will never be reached
and so will not be run."

The problem of default handlers, though, persists. But perhaps it is
not such a terrible thing and can be minimized by making compiler
conditions separate from other condition types (warnings, errors,
etc).

Juanjo

-- 
Facultad de Fisicas, Universidad Complutense,
Ciudad Universitaria s/n Madrid 28040 (Spain)
http://juanjose.garciaripoll.googlepages.com




More information about the ecl-devel mailing list