[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: address@hidden: Speed of all-completions]

From: David Kastrup
Subject: Re: address@hidden: Speed of all-completions]
Date: 15 Jun 2004 09:29:37 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50

Luc Teirlinck <address@hidden> writes:

> David Kastrup wrote:
>    Andreas Schwab <address@hidden> writes:
>    > This is due to this change:
>    > 
>    >  (Ftry_completion, Fall_completions, Ftest_completion): Bind
>    >  case-fold-search to the value of completion-ignore-case when
>    >  checking completion-regexp-list.
>    > 
>    > I've checked in a fix that avoids the overhead of specbind when
>    > completion-regexp-list is empty.
>    At the cost of being more expensive when it isn't.  I don't see why
>    you have to undo the binding all the time.  Just initialize the
>    binding depth variable to something illegal at the start of the
>    function.  Then when you need the binding, you check whether it has
>    already been done and do it if needed.
>    And at the exit of the function, you check whether the binding had
>    happened and in that case undo it before returning.
> I believe that it is completely safe to bind case-fold-search to the
> value of completion-ignore-case _once_ around the entire while loops
> in Ftry_completion and Fall_completions.

Unless I misunderstand, that is what Andreas replaced, since the
"once" cost occured far too often.

So he changed once always to once per loop.  I was proposing once at

David Kastrup, Kriemhildstr. 15, 44793 Bochum

reply via email to

[Prev in Thread] Current Thread [Next in Thread]