[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: package-autosuggest
From: |
Eshel Yaron |
Subject: |
Re: package-autosuggest |
Date: |
Fri, 01 Sep 2023 09:01:28 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Hello Stefan,
Stefan Kangas <stefankangas@gmail.com> writes:
> Eshel Yaron <me@eshelyaron.com> writes:
>
>> That'd indeed already be an improvement, my point is that in some cases
>> we would know that it really is the right package with very high
>> certainty.
>
> Shouldn't that just be the criterion, then? In other words, isn't
> that what it would mean to only recommend things that are likely to be
> helpful?
I'm not sure. In Philip's draft, I don't think that this is the case.
(Correct me if I've missed anything, please.) The way I see it there
are two parameters to consider for each recommendation. Let's call them
potential and confidence. Potential is how much value the user can
obtain from Emacs's recommendation. That depends mostly on the
recommended package itself. Confidence is how certain Emacs is that
this user should use this package. For example, again, in the current
draft we have a recommendation for `sml-mode` based on files with
extension `.sml`. This recommendation has great potential to benefit
Standard ML users (I assume, I haven't tried it out myself), but the
confidence for this recommendation isn't that high, because it's prone
to false positives (not all `.sml` files are Standard ML).
The crux is that the quality of a recommendation depends not only on the
quality of the package but also on the strength of the signal that leads
Emacs to recommend it (the quality of the "hint").
Personally, I think that even with a chance of false positives,
suggesting `sml-mode` to a user that opens `foo.sml` is great. For this
reason, I proposed that Emacs should make both high-confidence and
low-confidence recommendations, but use different messages for the two
cases (or three, if you want to also have "medium-confidence").
Best,
Eshel
- Re: package-autosuggest,
Eshel Yaron <=