Subject: Re: bug#49860: 28.0.50; add IRCv3 building blocks to ERC

From: Björn Bidar <[email-masked]>
Date: Wed, 17 Jul 2024 07:52:14 +0300

"J.P." <[email-masked]> writes:

> Hi Björn,
>
> Björn Bidar <[email-masked]> writes:
>
>> How would IRv3 extension be implement as minor mode would work?
>> For example deactivating them does not work without reconnecting.
>> Further they are also interconnected you need some to activate others.
>
> My intention in describing these extensions as conforming to the
> minor-mode interface (to whatever extent such a thing exists, even as a
> loosely defined set of requirements) was merely as shorthand to imply
> they provide setup and teardown code, a mode variable, etc. affecting
> functionality layered atop a major mode. But while this _does_ satisfy
> those fundamental requirements (and thus "implement" the interface),
> perhaps that's more of a technicality, and stressing the point will only
> cause confusion. Therefore, in the future, I will relegate all such
> mention of minor modes to a mere footnote. Thanks for raising this
> concern.
>

I think I was taking the word minor-mode to literal. My concerns
came from the point that in theory a user could call the minor mode
function while they are connected and cause issues.
Thank you for explaining further.

Having each extension be module can be nice however it also increases
the complexity and overhead that comes with two many small modules.

>
> Anyway, ERC has been offering a mostly functional POC for users to try
> for years now. You can find the info elsewhere in this bug thread, just
> in case you're interested or are desperate to read some questionable
> code. However, I'm guessing "not very" since my records indicate you're
> a Circe user! (But I appreciate your input regardless.)
>

I'm indeed a Circe user however I'm interested in working IRCv3 in Emacs
and was thinking on how to implement in Emacs in the past.
At the end of the day working IRCv3 is very important, more important
than which mode to use, although ERC is a bit messy compared to Circe
from my point of view. But that's off-topic anyhow.