l...@gnu.org (Ludovic Courtès) writes: > Hello there! > > Andy Wingo <wi...@pobox.com> writes: > >> On Sat 27 Nov 2010 01:08, Andreas Rottmann <a.rottm...@gmx.at> writes: >> >>> to not lose current functionality, `print-exception' and exception >>> printer procedures would need a `frame' argument as well, right? >> >> I guess. I never liked that, though; sounds like a needless tangling of >> concerns. What does having the frame give us? Just source, or the >> function name, or what? It seems like a message about the context in >> which the error occurred could just as well come before the error is >> printed out. >> >> What do you think? What does Ludovic think? :) > > I don’t think, actually. :-) > > Well, at first I thought exception printers could be nice. Currently, > there’s a single exception printer, which makes assumptions about the > arguments to ‘throw’. Namely, it expects (throw KEY FUNC FORMAT-STRING > FORMAT-ARG ...), or something like that. When that is honored, > exceptions are displayed in a human-readable way, otherwise they are > (very) badly printed, which could be improved. > Well, the point is that for R6RS and SRFI-34 exceptions, this convention is never honored, and it makes perfect sense IMO to introduce a mechanism that allows Guile to deal with alternative conventions already present in its code base.
> OTOH, exceptions are a programming mechanism, not a UI mechanism, so one > could argue that it’s up to the application to define how to present > exceptions to the user. > AFAIU, the proposed API is there to influence the presentation of exceptions that are _not_ handled by the application. The achieved better representation of exceptions is a convinience for developers, and not something that should make a difference for the user of a Guile-based application, in the absence of any bugs in said application. If there is a bug, however, and thus an exception escapes to Guile's exception handler, a better presentation will allow for better bug reports (again, a convinience for the developer). > I think I’m slightly skeptical about system-wide exception printers > because of this, and also because system-wide settings are evil. > I somewhat share that sentiment -- the global registry feels a bit awkward; perhaps it should be stored in a fluid? Also, I'd rather have the proposed API be Guile-internal, but I don't know how to properly achieve that. Regards, Rotty -- Andreas Rottmann -- <http://rotty.yi.org/>