Subject: Re: bug#72212: 31.0.50; API for condition objects

From: Stefan Kangas <[email-masked]>
Date: Sat, 2 Nov 2024 15:37:11 -0700

Stefan Monnier <[email-masked]> writes:

> Here are options, I can see:
>
> - Change the manual's text to use "condition" instead of "error" pretty
>   much everywhere.
> - Use a naming based on `error` instead of `condition` (optionally with
>   `error-case(-unless-debug)` as aliases for `condition-case`?).
> - Keep a mix, where we add to the manual a paragraph explaining that
>   `signal` really causes a "condition" but that most conditions (tho not
>   all, `quit` being the main(sole?) exception) are subtypes of the
>   `error` condition so we usually refer to conditions as "errors".
>
> I'm leaning towards the third option, because I think straightening out
> the mix of "conditions" and "errors" we have is fairly difficult.

In an ideal world, we would perhaps take the plunge and rename "errors"
to "conditions", but that seems high-effort, and potentially painful and
controversial.  It is not clear that it would be worth the effort.

At the same time, we could probably get 90 % of the way there with some
clarifications in our documentation.  So, on balance, I agree that the
third option looks more attractive.