guile-devel
[Top][All Lists]
Advanced

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

Re: Line/column numbers in user supplied exception handlers


From: Marius Vollmer
Subject: Re: Line/column numbers in user supplied exception handlers
Date: 10 Jul 2001 03:27:49 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.0.102

Neil Jerram <address@hidden> writes:

> >>>>> "Marius" == Marius Vollmer <address@hidden> writes:
> 
>     Marius> Yes, true.  But I'd say that this default handler is not
>     Marius> one that calls scm_ithrow, it would invoke the debugger...
> 
> Doesn't this conflict with what you say later about only entering the
> debugger when there is a REPL in operation?

Yes. :-)
 
> I think you're right, but I'm worried about the risk of confusion
> (including for myself) between error handling using `catch' and error
> handling using `call-with-exception-handler'.  How would you delineate
> the boundary between them?

I would deprecate catch/throw.

>     Marius> Yes, stacks should not be needed to saved explicitely, I'd
>     Marius> say.
> 
> I'm not sure what you mean here.  I wouldn't want the evaluator to do
> `(fluid-set! current-stack (make-stack #t))' automatically at the
> start of every frame!

Hmm, no, what I probably meant was that normal error handlers should
not need to worry about saving the stack at the right time.  It should
be an operation internal to the system.

I think I need to shut up about this issue until I know more about how
Guile actually works in this area...

> I see.  Do you think we should do this by Emacs-like condition names
> -- which is just inheritance reinvented but would allow us to keep
> the property that `throw' tags are symbols -- or use GOOPS?

I would use GOOPS.

> If the latter, should we aim to continue supporting symbol tags
> (which is easy enough, by adding a `throw' method that wraps the
> symbol in a symbol-exception instance), or go for a clean break with
> the past?

Don't know... we certainly should provide a transition phase.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]