Hi all,
On 17/06/2021 12:25, IOhannes m zmoelnig wrote: ...
Pd is a data flow language and I thikn the per-canvas paradigm maps well to the idea of data "passing through a danger zone" - which it can also leave as well.
...
however, I do like oliver's idea of hooking up such a [catch]-like object in the object-tree.
...
Both have their merits, I suppose the depth first flow version could benefit from another object to uninstall the error handler, making it able to emulate the per-canvas mechanism.
A feature like "(re-)throw error/exception to parent" could be useful in both cases; with top-level unhandled errors getting printed in the console. And a "throw error to current exception handler" would be useful too.
This proliferation of objects makes me think that it could be useful to have an [error foo] set of objects, like [list].
Something like this perhaps (swap outlet order if you like, doesn't bother me)
 | [error begin ]  |      | [foo]     recover from bar and baz errors (apart from error 42 from bar) as well as errors from foo  | [error begin    ]  |          | [bar]      [route 42               ]  |         |                | [error end] recover from bar error 42   [error throw]  | [baz]  |