Thanks for the assist! I have one comment:
> The equivalent of `finally`/destructors is `unwind-protect`, which has to interoperate with the condition mechanism but doesn't deal with conditions itself.
It actually doesn't need to interoperate with the condition system; it has to interoperate with the stack-unwinding primitives - `go`/`tagbody`, `return-from`/`block`, and `throw`/`catch` - that are one of the foundations of the condition system.
If it works with those, then it works with a condition system, since all control flow that happens inside the condition system is a derivative of those primitive operators.