unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "João Távora" <joaotavora@gmail.com>
To: Dmitry Gutov <dgutov@yandex.ru>
Cc: Daniel Mendler <mail@daniel-mendler.de>,
	Juri Linkov <juri@linkov.net>,
	Stefan Monnier <monnier@iro.umontreal.ca>,
	"emacs-devel@gnu.org" <emacs-devel@gnu.org>
Subject: Re: complexity in minibuffer
Date: Wed, 2 Jun 2021 16:37:16 +0100	[thread overview]
Message-ID: <CALDnm52UgA4qYwEPK7rVvAfks5HAHQNVrdMwc8SkMuNjmWeJJg@mail.gmail.com> (raw)
In-Reply-To: <45be3e2f-82f6-087c-bfd8-5926a395d198@yandex.ru>

On Wed, Jun 2, 2021 at 4:29 PM Dmitry Gutov <dgutov@yandex.ru> wrote:
>
> On 02.06.2021 18:20, João Távora wrote:
> > By that time, you have already traversed the completion list many times.
> > What's the problem with having the completions themselves contain
> > all that's needed to render them?
>
> In any of those "many times", did you already know which completions
> will be displayed, and which will not?
>
> Some transformations will be more costly than others (even if the
> current examples are pretty fast), so we shouldn't call them unless we
> know a given completion will be displayed.

You're again misunderstanding my suggestion, and bringing
up the same concern, which I've already answered. Let me
try again. Call the total group of completions A. Invoke the group func
for every c in A, yes.  _Don'_t transform every completion until you know
which ones to display, call this group D.  Instead allocate a transform
function and attach it to each c in A.  Then call this transform for each
c in D.

Currently, one calls group func for every c in A, to get the
group only.  Then one calls it again for c in D to get the group again
(call this invocation X) and finally call it again for c in D to get the
transformation.

My suggestion can also scrap the double invocation X (getting
the group may be expensive, for some backends).

João



  reply	other threads:[~2021-06-02 15:37 UTC|newest]

Thread overview: 174+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-22 21:00 [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Daniel Mendler
2021-05-23  9:37 ` João Távora
     [not found]   ` <adbebf98-eb86-9b8b-f191-e2e9f00cf80b@daniel-mendler.de>
2021-05-23 19:55     ` João Távora
2021-05-23 20:14       ` Daniel Mendler
2021-05-23 21:04         ` João Távora
2021-05-23 21:31           ` Daniel Mendler
2021-05-23 21:54             ` João Távora
2021-05-23 22:38               ` Daniel Mendler
2021-05-24 22:46                 ` João Távora
2021-05-25  3:06                   ` Daniel Mendler
2021-05-25  9:21                     ` João Távora
2021-05-26 18:12                   ` João Távora
2021-05-26 19:32                     ` Daniel Semyonov via Emacs development discussions.
2021-05-23 23:04               ` Daniel Mendler
2021-05-23 23:39                 ` Stefan Monnier
2021-05-24 22:54                   ` João Távora
2021-05-25  1:38                     ` Stefan Monnier
2021-05-25  8:39                       ` João Távora
2021-05-25 11:00                         ` Gregory Heytings
2021-05-26  0:03                           ` João Távora
2021-05-25  3:12                     ` Daniel Mendler
2021-05-25  9:25                       ` João Távora
2021-05-24 19:05                 ` João Távora
2021-05-24 19:13                   ` João Távora
2021-05-24 19:53                     ` Daniel Mendler
2021-05-24 23:04                       ` João Távora
2021-05-25  3:14                         ` Daniel Mendler
2021-05-25  9:31                           ` João Távora
2021-05-25  9:40                             ` Daniel Mendler
2021-05-24 22:05                   ` Dmitry Gutov
2021-05-23 23:37             ` Juri Linkov
2021-05-23 23:39             ` Juri Linkov
2021-05-24 10:26               ` Daniel Mendler
2021-05-24 22:07                 ` Juri Linkov
2021-05-25  2:53                   ` Daniel Mendler
2021-05-25  8:30                     ` João Távora
2021-05-25 16:59                       ` Juri Linkov
2021-05-25 17:46                         ` João Távora
2021-05-25 20:37                           ` Juri Linkov
2021-05-26 21:45                             ` Juri Linkov
2021-05-26 22:20                               ` Dmitry Gutov
2021-05-26 23:17                                 ` João Távora
2021-05-27  1:06                                   ` Dmitry Gutov
2021-05-27  7:29                                     ` João Távora
2021-05-27 13:15                                       ` Dmitry Gutov
2021-05-27 14:19                                         ` João Távora
2021-05-27 18:52                                           ` Dmitry Gutov
2021-05-27 20:58                                             ` João Távora
2021-05-28  8:08                               ` Daniel Mendler
2021-05-28  8:34                                 ` João Távora
2021-05-28  9:06                                   ` Daniel Mendler
2021-05-28 10:09                                     ` João Távora
2021-05-28 11:16                                       ` Daniel Mendler
2021-05-28 11:41                                         ` João Távora
2021-05-28 11:55                                           ` Daniel Mendler
2021-05-28 12:15                                             ` João Távora
2021-05-28 12:32                                               ` Daniel Mendler
2021-05-28 13:17                                                 ` João Távora
2021-05-28 13:55                                                   ` Daniel Mendler
2021-05-28 18:46                                                 ` Juri Linkov
2021-05-29  8:11                                                   ` Daniel Mendler
2021-05-28 12:44                                             ` Dmitry Gutov
2021-05-28 13:14                                               ` Daniel Mendler
2021-05-28 13:57                                                 ` Dmitry Gutov
2021-05-28 14:10                                                   ` Daniel Mendler
2021-05-28 14:57                                                     ` Dmitry Gutov
2021-05-28 16:01                                                       ` Daniel Mendler
2021-06-01  9:56                                         ` João Távora
2021-06-01 11:27                                           ` Daniel Mendler
2021-06-01 12:00                                             ` João Távora
2021-06-01 12:37                                               ` Daniel Mendler
2021-06-01 14:30                                                 ` João Távora
2021-06-01 14:40                                                   ` Daniel Mendler
2021-06-01 15:49                                                     ` João Távora
2021-06-01 16:00                                                       ` Daniel Mendler
2021-06-01 18:47                                                         ` João Távora
2021-06-01 19:03                                                           ` Daniel Mendler
2021-06-01 22:32                                                             ` João Távora
2021-06-01 20:22                                                           ` Stefan Monnier
2021-06-01 22:39                                                             ` João Távora
2021-06-02  2:40                                                               ` Stefan Monnier
2021-06-02  7:53                                                                 ` João Távora
2021-06-02 13:48                                                                   ` Stefan Monnier
2021-06-01 23:04                                                           ` Dmitry Gutov
2021-06-01 23:22                                                             ` João Távora
2021-06-01 23:29                                                               ` João Távora
2021-06-01 23:46                                                               ` Dmitry Gutov
2021-06-02  0:02                                                                 ` João Távora
2021-06-02 11:48                                                                   ` Dmitry Gutov
2021-06-02 12:59                                                                     ` João Távora
2021-06-02 18:29                                                                       ` Dmitry Gutov
2021-06-02 18:52                                                                         ` João Távora
2021-06-02 14:19                                                                   ` complexity in minibuffer (was: (icomplete-vertical-mode): Add support for affixations and, annotations) Stefan Monnier
2021-06-02 14:33                                                                     ` João Távora
2021-06-02 15:06                                                                       ` complexity in minibuffer Stefan Monnier
2021-06-02 15:20                                                                         ` João Távora
2021-06-02 15:29                                                                           ` Dmitry Gutov
2021-06-02 15:37                                                                             ` João Távora [this message]
2021-06-02 18:11                                                                               ` Dmitry Gutov
2021-06-02 18:30                                                                                 ` João Távora
2021-06-02 15:38                                                                           ` Stefan Monnier
2021-06-02 15:45                                                                             ` João Távora
2021-06-02 15:59                                                                               ` Daniel Mendler
2021-06-02 16:29                                                                                 ` João Távora
2021-06-02 15:53                                                                             ` Daniel Mendler
2021-06-02 18:31                                                                         ` Dmitry Gutov
2021-06-02 19:03                                                                           ` João Távora
2021-06-02 20:15                                                                             ` Dmitry Gutov
2021-06-02 22:11                                                                       ` Juri Linkov
2021-06-03  9:04                                                                         ` João Távora
2021-06-03 20:28                                                                           ` Juri Linkov
2021-06-01 15:58                                                     ` [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Stefan Monnier
2021-06-01 16:04                                                       ` Daniel Mendler
2021-06-02  5:17                                               ` tumashu
2021-06-02  7:48                                                 ` João Távora
2021-06-02 10:40                                                   ` Dmitry Gutov
2021-06-02 11:04                                                     ` João Távora
2021-06-02 11:28                                                       ` Dmitry Gutov
2021-06-02 11:33                                                         ` João Távora
2021-06-02 12:31                                                           ` Dmitry Gutov
2021-06-02 13:16                                                             ` João Távora
2021-06-05  1:48                                                               ` Dmitry Gutov
2021-06-05  9:21                                                                 ` João Távora
2021-06-05 23:06                                                                   ` Dmitry Gutov
2021-06-05 23:25                                                                     ` João Távora
2021-06-05  4:23                                                               ` Stefan Monnier
2021-06-05  9:26                                                                 ` João Távora
2021-06-05 13:02                                                                 ` Ergus
2021-06-05 23:47                                                                 ` Dmitry Gutov
2021-06-06  2:30                                                                   ` Stefan Monnier
2021-06-02 13:38                                                           ` Stefan Monnier
2021-06-02 14:11                                                             ` Dmitry Gutov
2021-06-02 14:54                                                               ` Stefan Monnier
2021-06-02 15:07                                                                 ` João Távora
2021-06-05  1:08                                                                   ` Dmitry Gutov
2021-06-05  9:16                                                                     ` João Távora
2021-06-01 14:47                                           ` Gregory Heytings
2021-06-01 14:53                                             ` Daniel Mendler
2021-06-01 14:58                                               ` Gregory Heytings
2021-06-01 15:06                                                 ` Daniel Mendler
2021-06-01 15:33                                                   ` Gregory Heytings
2021-06-01 15:41                                                     ` Daniel Mendler
2021-06-01 15:09                                                 ` João Távora
2021-06-01 15:12                                                   ` Daniel Mendler
2021-06-01 15:06                                             ` João Távora
     [not found]                                           ` <b49749e34d620592d83a@heytings.org>
     [not found]                                             ` <CALDnm53Wdnp0yAu6uQd8A=6-uLArCBEdj4F+aVzUdFOT00XMWw@mail.gmail.com>
     [not found]                                               ` <b49749e34dc4e4287593@heytings.org>
     [not found]                                                 ` <87lf7t8wfz.fsf@gmail.com>
2021-06-01 15:24                                                   ` Gregory Heytings
2021-06-01 23:05                                                     ` João Távora
2021-05-24 23:02                 ` Dmitry Gutov
2021-05-24 23:04                 ` Dmitry Gutov
2021-05-23 21:35           ` Daniel Mendler
2021-05-23 22:42           ` Dmitry Gutov
2021-05-23 23:33             ` Stefan Monnier
2021-05-23 23:42             ` Juri Linkov
2021-05-24 23:24               ` Dmitry Gutov
2021-05-23 23:35       ` Juri Linkov
2021-05-24  3:23         ` Stefan Monnier
2021-05-24 10:34           ` Daniel Mendler
2021-05-24 16:22             ` Caching where-is-internal (was: (icomplete-vertical-mode): Add support for affixations and, annotations) Stefan Monnier
2021-05-24 16:31               ` Daniel Mendler
2021-05-24 19:53                 ` Caching where-is-internal Stefan Monnier
2021-05-24 20:07                   ` Daniel Mendler
2021-05-24 20:33                     ` Stefan Monnier
2021-05-24 20:45                       ` Daniel Mendler
2021-05-24 21:44                         ` Stefan Monnier
2021-05-24 21:52           ` [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Juri Linkov
2021-05-24 22:41             ` João Távora
2021-05-25  1:27             ` Stefan Monnier
2021-05-24 22:37         ` João Távora
2021-05-25 16:53           ` Juri Linkov
2021-05-25 17:24             ` Stefan Monnier
2021-05-25 17:40               ` João Távora
2021-05-25 20:01                 ` Stefan Monnier
2021-05-25 20:27                   ` Dmitry Gutov
2021-05-25 20:46                   ` João Távora

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CALDnm52UgA4qYwEPK7rVvAfks5HAHQNVrdMwc8SkMuNjmWeJJg@mail.gmail.com \
    --to=joaotavora@gmail.com \
    --cc=dgutov@yandex.ru \
    --cc=emacs-devel@gnu.org \
    --cc=juri@linkov.net \
    --cc=mail@daniel-mendler.de \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).