Subject: bug#65797: `buffer-match-p` should not use `func-arity`

From: Dmitry Gutov <[email-masked]>
Date: Fri, 15 Sep 2023 19:38:09 +0300

On 15/09/2023 04:38, Stefan Monnier wrote:
> The main question is one of convenience: Philip wanted this DWIMish
> behavior because he thought the added convenience was worth the
> complexity (just without realizing that he was offering something we
> can't really provide 😄.
> 
> If the added convenience is not used in practice (or not significantly
> enough to warrant the effort), then we can just change the
> doc and move on.

One of the considerations probably was to keep compatibility with the 
DSL in project-kill-buffer-conditions, where the predicate only receives 
one element.

I'm not sure if there are any actual predicates in use, though (the 
remander of the DSL seems to be very expressive on its own). But if 
there are we could say that the predicates are called with all the 
arguments that buffer-match-p is called with. And in this case it 
wouldn't be passed an extra arg, so the predicates would continue 
working as-is.

BTW, do we want to change '&optional ARG' to '&rest ARGS'? I don't have 
a use case in mind, but this would be the most flexible.