Hi George,
You were looking in the right neighbourhood, but the culprit was one level down from the catch override, in how the interpreter runs the code your editor sends it.
The more-verbose error text was intentional, but the pile-up wasn't: after an uncaught error, s7's stack wasn't being wound back to the top, so every mistake left a few frames behind. s7 builds its stacktrace by walking that stack, so each new error dragged along the leftovers from all the earlier ones — hence the growing wall of text. Clearing the terminal only hid the earlier printed output; the frames were still there, so the next error brought them all back.
The same bug bit scheduled callbacks (temporal recursion) even harder — a beat loop with a bug errors every firing. Both paths now run inside a proper catch that unwinds cleanly: you still get the terse "message / offending form / location" report, minus the trailing stacktrace, and repeated errors no longer accumulate. xtlang compile errors go through the same path, so they're covered too.
Fixed in v0.10.2, just tagged — binaries will follow once the release build finishes.
Cheers,
Ben
>--
>You received this message because you are subscribed to the Google Groups "Extempore" group.
>To unsubscribe from this group and stop receiving emails from it, send an email to
extemporelan...@googlegroups.com.
>To view this discussion visit
https://groups.google.com/d/msgid/extemporelang/594de434-b9ef-4735-8d31-dd7556430230n%40googlegroups.com.
--
Cheers,
Ben