Subject: bug#8890: 23.3; message writing slows emacs

From: Eli Zaretskii <[email-masked]>
Date: Sun, 11 Sep 2011 04:55:49 -0400

> From: Dave Abrahams <[email-masked]>
> Date: Sun, 11 Sep 2011 02:54:34 -0400
> Cc: [email-masked]
> 
> I mean to buffer the message until it has been stable for some
> amount of time.

I don't understand the details of the feature you are requesting.
Suppose `message' is being repeatedly called by some Lisp program in
quick succession -- what would you like to be actually displayed? only
the text of final message?  If so, why is that a good idea?  Most
"good" uses of fast echoing display very similar messages, like
"Updating... NN% done", where only the number changes.  It would be a
pity to lose this checkpointing feature, IMO.  So you will probably
say that there should be a variable to be bound to select one behavior
or the other.  But if Lisp code needs to bind a variable to avoid the
flashing of different messages, why not avoid those messages in the
first place?

Your original report says:

  I haven't done actual timings, but I'm finding that I have a *very*
  strong perception that when emacs is writing lots of messages, it
  slows down considerably.

Redisplay always slows down, but on any modern machine displaying only
the echo area should take a few milliseconds at the most, so I'd be
surprised if some real slowdown was involved.  If you can show some
timings, please do, as there could be a bug or misfeature somewhere.

Anyway, can you describe the situation in which you see these flashing
messages?  The only one I can think of is when Emacs starts up and
restores a previous session.  Is that your use case, or did you see
this in other situations?