From: Eli Zaretskii <eliz@gnu.org>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: luangruo@yahoo.com, 54802@debbugs.gnu.org
Subject: bug#54802: OClosure: Make `interactive-form` a generic function
Date: Tue, 19 Apr 2022 16:53:37 +0300 [thread overview]
Message-ID: <83czhduqla.fsf@gnu.org> (raw)
In-Reply-To: <jwvbkwxw6yd.fsf-monnier+emacs@gnu.org> (message from Stefan Monnier on Tue, 19 Apr 2022 09:34:47 -0400)
> From: Stefan Monnier <monnier@iro.umontreal.ca>
> Cc: luangruo@yahoo.com, 54802@debbugs.gnu.org
> Date: Tue, 19 Apr 2022 09:34:47 -0400
>
> >> Not sure what you mean by "affect all of Emacs". It affects
> >> a well-delimited (and small) part of the code.
> > It is called outside of the advice functions.
>
> The patch under discussion moves a well-understood and simple piece of
> code from C to ELisp, and while doing so marks the resulting function as
> generic so that it can be overridden on a case-by-case basis
> by packages.
>
> The move from C to ELisp should make no difference other than
> performance.
We've seen this proven wrong quite a few times already. This isn't
the first time we move some "well-understood and simple" code from C
to Lisp. And every time we did that it had unintended consequences:
subtle bugs, features that were lost, subtly changed behavior, etc.
How many times we need to experience this before we all understand
that there are no "well-understood and simple" enough code in Emacs
internals that can be reimplemented without consequences?
I could understand an argument about advantages that outweigh these
costs, but denying these costs exist? that I cannot understand, given
our common experience.
> The fact of marking it as generic does not directly have any impact at
> all (literally: it just adds a `cl--generic` property to the
> `interactive-form` symbol but the content of the `symbol-function` is
> the same as it would be for a normal function :-).
And makes debugging harder while at that. Right?
> >> Are you worried about introducing bugs, about the performance impact,
> >> or something else?
> > All of them.
>
> What makes you think this can introduce bugs?
Bitter experience. You were there, so I'm surprised you don't have
the same experience.
> What kinds of bugs?
How should I know? We will know when we discover them, months or
maybe years from now. But discover them we will, of that I'm certain.
> Care to be a bit more specific about the "something else"?
See above.
next prev parent reply other threads:[~2022-04-19 13:53 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-08 20:33 bug#54802: OClosure: Make `interactive-form` a generic function Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-09 5:58 ` Eli Zaretskii
2022-04-09 13:50 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-10 12:45 ` Lars Ingebrigtsen
2022-04-13 7:53 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-14 18:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 0:46 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 1:18 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 1:37 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 3:24 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 4:27 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 16:08 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-15 16:14 ` Eli Zaretskii
2022-04-18 22:59 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-19 5:40 ` Eli Zaretskii
2022-04-19 12:38 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-19 12:43 ` Lars Ingebrigtsen
2022-04-19 13:00 ` Eli Zaretskii
2022-04-19 13:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-19 13:53 ` Eli Zaretskii [this message]
2022-04-19 14:53 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-19 16:35 ` Eli Zaretskii
2022-04-19 17:52 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-26 14:38 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-04-27 16:05 ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-11 21:24 ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-06-12 5:34 ` Eli Zaretskii
2022-06-12 20:56 ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83czhduqla.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=54802@debbugs.gnu.org \
--cc=luangruo@yahoo.com \
--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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.