Subject: Re: bug#42149: Substring and flex completion ignore implicit trailing ‘any’

From: Dario Gjorgjevski <[email-masked]>
Date: Mon, 28 Dec 2020 11:22:18 +0100

Hi João,

> Indeed, I'm very sorry to be a kill-joy here, the patch doesn't look
> very good to me.

It’s all fine, however...

> Last time I looked it was too complex for me to follow, touches many
> lines, and created unnecessary consing.  I'm convinced the current
> algorithm in completion-pcm--hilit-commonality is fine for these
> 1-char edge cases, given that the assumptions hold.

I very much disagree with this due to 1. the test cases and 2. the
previous reply to Stefan where I tried to explain the shortcomings of
the current implementation of completion-pcm--hilit-commonality.  Also,
could you point to the unnecessary consing?  If anything, I believe my
patch is faster than the current implementation.

> I'm not aware that it's not sound, but I do believe it's too complex and
> not well understood.  In constrast, I can understand the three-line fix
> I did earlier and which covers all of Darios's test cases for the flex
> completion style.  Previously it was failing 7 cases, now it is only
> failing these 3.

Making the `any' explicit was also the very first thing I suggested, but
further testing pointed to problems it doesn’t solve, which are indeed
parts of the tests that are failing.  I can add more tests if you think
that would help.

Best regards,
Dario

-- 
$ keyserver=hkps://hkps.pool.sks-keyservers.net
$ keyid=744A4F0B4F1C9371
$ gpg --keyserver $keyserver --search-keys $keyid