Subject: Re: bug#53242: [PATCH] unify reads from local_var_alist

From: Eli Zaretskii <[email-masked]>
Date: Sat, 15 Jan 2022 09:32:04 +0200

> Date: Fri, 14 Jan 2022 21:01:46 +0000
> Cc: [email-masked]
> From: Sergey Vinokurov <[email-masked]>
> 
> I argue that something's wrong if there are so many local variables
> defined that lookups into the local_var_alist would cause
> significant delays.

I agree that something is wrong, in the sense that the implementation
of some feature(s) should probably be rethought.  But that's not the
point I'm trying to make.  The point I'm trying to make is that
formerly, the user could interrupt such a long search, and now he/she
cannot.  The user is usually not the one to "blame" for the length of
the list.  With the previous code, the user had a "fire escape".

> My argument is that at this point we don't care whether user is able
> to interrupt basic operations of reading and writing buffer-local
> variables.

"We" might not care, but the user could very much care.  We in effect
locked the users without no way to handle these situations.

> Even if we use Fassq and the user could interrupt, nothing is gained
> in my opinion - any command that involves reading or writing
> buffer-local variables will still remain slow.

The commands will remain slow, but the users could stop Emacs from
wasting their time.  Now they cannot.  Saying that "we don't care"
means we don't  care about our users, which is certainly not true.