Hi David, David Pirotte <da...@altosw.be> skribis:
> +;; instead of using the above, let's define a specific format binding > +;; for exception printers, to allow its user customization. > +(define exception-format simple-format) > + > ;; this is scheme wrapping the C code so the final pred call is a tail call, > ;; per SRFI-13 spec > (define string-any > @@ -762,7 +766,7 @@ information is unavailable." > ((not (car args)) 1) > (else 0)))) > (else > - (format (current-error-port) "guile: uncaught throw to ~a: ~a\n" > + (exception-format (current-error-port) "guile: uncaught throw to ~a: > ~a\n" It seems to me that you can achieve similar effect, at least in some cases, by parameterizing ‘current-error-port’. It also makes more sense to me to parameterize ‘current-error-port’ rather than set ‘exception-format’, because the ‘exception-format’ is very constrained: it has to implement at least everything ‘simple-format’ implements. WDYT? Besides, note that there’s also ‘set-exception-printer!’. It’s a different kind of customization, but it can serve a similar purpose. Thanks, Ludo’.