From: Alan Mackenzie <acm@muc.de>
To: Philippe Vaucher <philippe.vaucher@gmail.com>
Cc: Jonas Bernoulli <jonas@bernoul.li>,
Emacs developers <emacs-devel@gnu.org>,
Stefan Monnier <monnier@iro.umontreal.ca>,
Adam Porter <adam@alphapapa.net>, Eli Zaretskii <eliz@gnu.org>,
Kyle Meyer <kyle@kyleam.com>
Subject: Re: [ELPA] New package: transient
Date: Wed, 29 Apr 2020 17:27:39 +0000 [thread overview]
Message-ID: <20200429172739.GB4002@ACM> (raw)
In-Reply-To: <CAGK7Mr7i6uMH1JRnj2E1hY5vSwiGkVwQARLHq0Q_wMn7aBKP9Q@mail.gmail.com>
Hello, Philippe.
On Wed, Apr 29, 2020 at 15:12:50 +0200, Philippe Vaucher wrote:
> > > *
> > https://www.gnu.org/software/emacs/manual/html_node/elisp/Association-Lists.html
> > sometimes assoc,
> > > alist-get, assq, copy-alist. How am I supposed to use `C-h f alist TAB`
> > to discover the function I want? I
> > > can't, I have to go to that webpage and read it all.
> > I think "C-h d alist RET" is your friend.
> You miss the central point of my argument. The problem is not that the doc
> is hard to find, it's that I *have* to find it to know which are the
> related functions.
Let me put it to you that there is NO PROBLEM here. If you, for any
reason, forget the function name `assq' you can find it within seconds
by typing i alist in the manual. And if you don't like reading
documentation, why make that everybody else's problem?
> It is much easier for the mind to think in terms of namespaces, .....
Whose mind would that be? It is much easier for me to read short words
than long words, and that applies to code as much as to text.
What are you proposing to do? Replace `assq' with `list-assq'? YUCK!
This will make code more turgid, and thus more difficult to read. And
then, will we get `math-+' and `math-*', as though we were programming
in Java? Double yuck!
> .... here are examples from other languages:
[ .... ]
> I could go on but I think you should be able to understand my examples.
Maybe, maybe not, but I disagree with you wholeheartedly.
> Once related functions are namespaced together, almost all tooling benefit
> from it. No need to provide a manual grouping the unrelated functions
> together, just document each function:
What "tooling benefit"? The manual groups related functions together,
not unrelated ones. You want to fragment the manual into just
documenting each function separately? I disagree strongly with this,
too.
What you want to do is to bloat out our source code by replacing decades
old traditional names with "namespaced" names. Taken to extremes, you
want to replace car and cdr with list-car and list-cdr. People hacking
on Emacs tend to be of a higher intellectual calibre than to need such
mental aids.
> - autocompletion can help you guess the right function.
> - searching for function names (C-h f) can help you find the right
> function.
As can typing i in the manual.
> > > *
> > https://www.gnu.org/software/emacs/manual/html_node/elisp/List-Elements.html
> > > sometimes named logically (nth, remove, append), sometimes named
> > > after implementation detail (car, cdr), and no grouping at all so
> > > I can't `C-h f list TAB`
> > Also, the 'i' command in Info.
> > But you said you didn't want to read manuals, so I'm not sure why the
> > examples are from the manual.
> Again you strawman my argument. Try to understand my central point,
> and then reply to that instead of details of "how you do it right now
> and that works for you".
I understand your central point only too well. You want to impose
bucket-loads of work, disrupting Emacs development, bloating out code,
making it more difficult to read and understand. And all for what? So
that the very occasional trip to a manual by a newcomer can be spared?
Tell me, how would you feel if somebody decided to "namespace" your
name, Philippe Vaucher? I would guess that you would decide you like
your name the way it is.
> Kind regards,
> Philippe
--
Alan Mackenzie (Nuremberg, Germany).
next prev parent reply other threads:[~2020-04-29 17:27 UTC|newest]
Thread overview: 238+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-28 13:01 [ELPA] New package: transient Jonas Bernoulli
[not found] ` <jwv4kt3d1r8.fsf-monnier+emacs@gnu.org>
[not found] ` <87v9ljo5d0.fsf@bernoul.li>
[not found] ` <jwvh7x3bfoe.fsf-monnier+emacs@gnu.org>
[not found] ` <87ftcnxu5m.fsf@bernoul.li>
2020-04-29 8:29 ` Philippe Vaucher
2020-04-29 9:26 ` Eli Zaretskii
2020-04-29 9:50 ` Philippe Vaucher
2020-04-29 10:05 ` Eli Zaretskii
2020-04-29 10:17 ` tomas
2020-04-29 10:33 ` Eli Zaretskii
2020-04-29 10:52 ` tomas
2020-04-30 12:44 ` Arthur Miller
2020-04-30 13:28 ` tomas
2020-04-30 14:26 ` Namespacing Emacs's core (was: [ELPA] New package: transient) Stefan Monnier
2020-04-30 15:08 ` tomas
2020-04-30 18:23 ` Philippe Vaucher
2020-04-30 18:56 ` Philippe Vaucher
2020-04-30 19:02 ` tomas
2020-04-30 2:30 ` [ELPA] New package: transient Richard Stallman
2020-05-01 2:49 ` Richard Stallman
2020-05-01 6:33 ` Eli Zaretskii
2020-05-02 2:24 ` Richard Stallman
2020-05-02 7:04 ` Eli Zaretskii
2020-05-02 8:09 ` Philippe Vaucher
2020-05-02 9:05 ` Eli Zaretskii
2020-05-02 9:19 ` Eli Zaretskii
2020-05-02 10:11 ` Philippe Vaucher
2020-05-02 10:33 ` Eli Zaretskii
2020-05-02 10:56 ` Philippe Vaucher
2020-05-02 10:59 ` Philippe Vaucher
2020-05-02 11:09 ` Use elisp--xref-backend in *Apropos* and *Help* (Was Re: [ELPA] New package: transient) João Távora
2020-05-02 14:03 ` Stefan Monnier
2020-05-03 2:08 ` Dmitry Gutov
2020-05-02 11:22 ` [ELPA] New package: transient Eli Zaretskii
2020-05-02 11:52 ` Philippe Vaucher
2020-05-02 12:08 ` Eli Zaretskii
2020-05-02 12:09 ` 조성빈
2020-05-02 12:14 ` Eli Zaretskii
2020-05-02 12:22 ` 조성빈
2020-05-02 12:54 ` Eli Zaretskii
2020-05-02 17:33 ` Drew Adams
2020-05-04 3:07 ` Richard Stallman
2020-05-04 16:04 ` Drew Adams
2020-05-02 9:53 ` Philippe Vaucher
2020-05-02 10:39 ` João Távora
2020-05-02 11:10 ` Philippe Vaucher
2020-05-02 11:17 ` João Távora
2020-05-02 11:39 ` Philippe Vaucher
2020-05-02 12:02 ` João Távora
2020-05-02 12:11 ` 조성빈
2020-05-02 12:20 ` João Távora
2020-05-02 12:36 ` 조성빈
2020-05-02 12:59 ` João Távora
2020-05-02 13:02 ` Eli Zaretskii
2020-05-02 13:12 ` João Távora
2020-05-02 12:28 ` tomas
2020-05-02 12:22 ` tomas
2020-05-03 3:43 ` Richard Stallman
2020-05-03 4:24 ` Stefan Monnier
2020-05-04 3:08 ` Richard Stallman
2020-05-02 17:48 ` Drew Adams
2020-05-02 14:50 ` Dmitry Gutov
2020-05-02 14:57 ` João Távora
2020-05-02 17:42 ` Drew Adams
2020-05-02 10:54 ` Eli Zaretskii
2020-05-02 11:47 ` Philippe Vaucher
2020-05-02 12:04 ` Eli Zaretskii
2020-05-02 14:56 ` Dmitry Gutov
2020-05-02 15:37 ` Eli Zaretskii
2020-05-02 15:51 ` Dmitry Gutov
2020-05-02 16:09 ` Eli Zaretskii
2020-05-02 13:59 ` Stefan Monnier
2020-05-02 14:10 ` Philippe Vaucher
2020-05-02 14:12 ` Eli Zaretskii
2020-05-02 14:26 ` Philippe Vaucher
2020-05-02 15:29 ` Eli Zaretskii
2020-05-02 15:43 ` Philippe Vaucher
2020-05-02 16:05 ` Eli Zaretskii
2020-05-02 16:12 ` Philippe Vaucher
2020-05-02 16:26 ` Eli Zaretskii
2020-05-02 16:42 ` Philippe Vaucher
2020-05-02 18:27 ` Drew Adams
2020-05-03 3:43 ` Richard Stallman
2020-05-03 7:47 ` Philippe Vaucher
2020-05-03 19:46 ` Drew Adams
2020-05-03 21:18 ` Stefan Monnier
2020-05-03 22:04 ` João Távora
2020-05-04 0:41 ` Drew Adams
2020-05-04 3:09 ` Richard Stallman
2020-05-02 16:48 ` Stefan Monnier
2020-05-02 17:17 ` Eli Zaretskii
2020-05-02 18:10 ` 조성빈
2020-05-02 18:30 ` Eli Zaretskii
2020-05-02 18:37 ` 조성빈
2020-05-02 18:45 ` Eli Zaretskii
2020-05-02 19:12 ` 조성빈
2020-05-02 19:44 ` Drew Adams
2020-05-02 18:32 ` Yuan Fu
2020-05-02 20:41 ` Stefan Monnier
2020-05-02 20:39 ` Stefan Monnier
2020-05-02 21:00 ` João Távora
2020-05-02 21:53 ` Drew Adams
2020-05-02 22:13 ` João Távora
2020-05-04 3:07 ` Richard Stallman
2020-05-02 21:27 ` Philippe Vaucher
2020-05-03 14:45 ` Eli Zaretskii
2020-05-03 15:03 ` João Távora
2020-05-03 15:11 ` Joost Kremers
2020-05-03 15:28 ` C-h f and C-h v (was: [ELPA] New package: transient) Stefan Monnier
2020-05-03 17:41 ` João Távora
2020-05-03 17:44 ` João Távora
2020-05-03 16:21 ` [ELPA] New package: transient Eli Zaretskii
2020-05-03 15:17 ` Stefan Monnier
2020-05-03 16:32 ` Eli Zaretskii
2020-05-03 21:13 ` Stefan Monnier
2020-05-04 13:52 ` Eli Zaretskii
2020-05-04 15:14 ` Stefan Monnier
2020-05-04 15:55 ` Eli Zaretskii
2020-05-04 18:41 ` Stefan Monnier
2020-05-04 18:58 ` Eli Zaretskii
2020-05-03 16:23 ` Dmitry Gutov
2020-05-03 16:47 ` Eli Zaretskii
2020-05-03 17:04 ` Dmitry Gutov
2020-05-03 17:29 ` Eli Zaretskii
2020-05-03 17:42 ` Dmitry Gutov
2020-05-03 18:58 ` Eli Zaretskii
2020-05-04 0:04 ` Dmitry Gutov
2020-05-03 19:49 ` João Távora
2020-05-03 23:47 ` Dmitry Gutov
2020-05-04 1:01 ` João Távora
2020-05-04 1:28 ` Dmitry Gutov
2020-05-04 18:05 ` João Távora
2020-05-04 14:24 ` Eli Zaretskii
2020-05-04 15:23 ` Stefan Monnier
2020-05-04 16:00 ` Eli Zaretskii
2020-05-04 17:31 ` Drew Adams
2020-05-04 1:13 ` Jean-Christophe Helary
2020-05-04 14:22 ` Eli Zaretskii
2020-05-05 8:23 ` Jean-Christophe Helary
2020-05-05 14:48 ` Eli Zaretskii
2020-05-05 15:39 ` Jean-Christophe Helary
2020-05-05 16:13 ` Eli Zaretskii
2020-05-05 16:33 ` Jean-Christophe Helary
2020-05-05 15:44 ` Jean-Christophe Helary
2020-05-05 16:15 ` Eli Zaretskii
2020-05-05 16:40 ` Jean-Christophe Helary
2020-05-05 8:27 ` Jean-Christophe Helary
2020-05-03 21:04 ` Stefan Monnier
2020-05-04 13:51 ` Eli Zaretskii
2020-05-03 16:50 ` João Távora
2020-05-03 16:54 ` Eli Zaretskii
2020-05-03 17:43 ` João Távora
2020-05-04 3:08 ` Richard Stallman
2020-05-02 18:57 ` Drew Adams
2020-05-02 19:15 ` 조성빈
2020-05-02 19:59 ` Drew Adams
2020-05-02 20:47 ` Stefan Monnier
2020-05-02 14:22 ` João Távora
2020-04-29 13:12 ` Philippe Vaucher
2020-04-29 13:42 ` tomas
2020-04-29 13:50 ` Philippe Vaucher
2020-04-29 17:03 ` Robert Pluim
2020-04-29 19:25 ` Philippe Vaucher
2020-04-29 17:51 ` Clément Pit-Claudel
2020-04-29 19:24 ` Philippe Vaucher
2020-04-29 13:53 ` Stefan Kangas
2020-04-29 14:01 ` tomas
2020-04-29 14:20 ` Eli Zaretskii
2020-04-29 15:25 ` Philippe Vaucher
2020-04-30 18:13 ` Dmitry Gutov
2020-04-30 18:19 ` Philippe Vaucher
2020-04-30 18:41 ` Dmitry Gutov
2020-04-30 19:26 ` Philippe Vaucher
2020-04-30 19:34 ` Philippe Vaucher
2020-04-30 22:47 ` Dmitry Gutov
2020-04-30 22:20 ` Dmitry Gutov
2020-05-01 3:13 ` Stefan Monnier
2020-05-01 3:15 ` Stefan Monnier
2020-05-01 15:36 ` Dmitry Gutov
2020-05-01 16:05 ` Philippe Vaucher
2020-05-02 2:27 ` Richard Stallman
2020-05-02 7:07 ` Eli Zaretskii
2020-05-02 8:06 ` Philippe Vaucher
2020-05-02 17:08 ` Drew Adams
2020-04-30 19:31 ` Stefan Monnier
2020-04-29 17:27 ` Alan Mackenzie [this message]
2020-04-29 19:01 ` tomas
2020-04-29 19:31 ` Philippe Vaucher
2020-04-30 11:51 ` Alan Mackenzie
2020-04-30 12:38 ` tomas
2020-04-30 17:30 ` Dmitry Gutov
2020-04-30 17:53 ` Philippe Vaucher
2020-04-30 18:42 ` tomas
2020-04-30 18:41 ` tomas
2020-04-30 18:14 ` Philippe Vaucher
2020-04-30 18:58 ` tomas
2020-04-30 19:13 ` Philippe Vaucher
2020-04-30 19:33 ` tomas
2020-04-30 20:54 ` Alan Mackenzie
2020-04-30 22:46 ` chad
2020-05-02 2:27 ` Richard Stallman
2020-05-01 8:23 ` Philippe Vaucher
2020-05-02 2:24 ` Richard Stallman
2020-04-30 22:04 ` Keeping it kind Clément Pit-Claudel
2020-05-01 7:17 ` tomas
2020-05-01 8:31 ` Philippe Vaucher
2020-05-02 2:24 ` Richard Stallman
2020-05-02 2:27 ` Richard Stallman
2020-05-01 2:51 ` [ELPA] New package: transient Richard Stallman
2020-04-29 20:02 ` Clément Pit-Claudel
2020-04-30 1:08 ` Stefan Monnier
2020-04-29 13:19 ` Philippe Vaucher
2020-04-29 14:28 ` Eli Zaretskii
2020-04-29 14:51 ` Eli Zaretskii
2020-04-30 2:28 ` Richard Stallman
2020-04-29 13:32 ` Stefan Monnier
2020-04-29 13:43 ` Philippe Vaucher
2020-04-29 14:17 ` Yuan Fu
2020-04-29 14:19 ` Yuan Fu
2020-04-30 2:28 ` Richard Stallman
2020-04-29 15:31 ` Eli Zaretskii
2020-04-29 15:48 ` Stefan Monnier
2020-04-29 16:05 ` Drew Adams
2020-05-01 17:38 ` João Távora
2020-05-01 18:03 ` Stefan Monnier
2020-04-30 2:30 ` Richard Stallman
2020-04-29 14:56 ` Drew Adams
2020-04-29 12:52 ` Adam Porter
2020-04-30 2:29 ` Richard Stallman
2020-04-30 10:50 ` Phil Sainty
2020-05-01 2:52 ` Richard Stallman
2020-05-01 5:36 ` Phil Sainty
2020-05-02 2:25 ` Richard Stallman
2020-05-02 2:30 ` T.V Raman
2020-05-01 10:40 ` Kévin Le Gouguec
2020-05-01 15:16 ` Clément Pit-Claudel
2020-05-02 2:24 ` Richard Stallman
-- strict thread matches above, loose matches on Subject: below --
2020-04-30 11:43 Zhu Zihao
[not found] <<87368npxw4.fsf@bernoul.li>
[not found] ` <<jwv4kt3d1r8.fsf-monnier+emacs@gnu.org>
[not found] ` <<87v9ljo5d0.fsf@bernoul.li>
[not found] ` <<jwvh7x3bfoe.fsf-monnier+emacs@gnu.org>
[not found] ` <<87ftcnxu5m.fsf@bernoul.li>
[not found] ` <<CAGK7Mr52_xBMYnPTO4XZ5EqvMji0pKD_YmqKHQzVo2HMCXd0KA@mail.gmail.com>
[not found] ` <<83y2qezlpd.fsf@gnu.org>
[not found] ` <<CAGK7Mr57NeMeXk5kT4fqPUGP_C1y9g8XfL8S4oXN=w=Hy8MJEA@mail.gmail.com>
[not found] ` <<83tv12zjx1.fsf@gnu.org>
[not found] ` <<CAGK7Mr7i6uMH1JRnj2E1hY5vSwiGkVwQARLHq0Q_wMn7aBKP9Q@mail.gmail.com>
[not found] ` <<837dxyz83p.fsf@gnu.org>
[not found] ` <<CAGK7Mr50tQ+DeWvxT7O6E7Pm0jg7TFCxhS-iMeW03pgBcp8Lhw@mail.gmail.com>
[not found] ` <<978f970b-b5c2-bd83-39da-f632d069d7d5@yandex.ru>
[not found] ` <<CAGK7Mr5-sYDJBWxeSE6VoAJkYxLgffDkJPRv9g7cd9qME0nLEw@mail.gmail.com>
[not found] ` <<98ab19cf-680b-9cd2-7c42-89dd0b2f470a@yandex.ru>
[not found] ` <<CAGK7Mr5Qu-4iKvZuWmA0uswUrmZYgQmv4Dw=CibRjwUk1PggUw@mail.gmail.com>
[not found] ` <<E1jUhsZ-0006mV-Rb@fencepost.gnu.org>
[not found] ` <<83y2qau86i.fsf@gnu.org>
2020-05-02 16:51 ` Drew Adams
[not found] ` <<20200429101755.GF24737@tuxteam.de>
[not found] ` <<E1jTyxu-0008FM-LM@fencepost.gnu.org>
[not found] ` <<E1jULk7-0007ZA-OQ@fencepost.gnu.org>
[not found] ` <<838sicw4do.fsf@gnu.org>
[not found] ` <<E1jUhpj-00064u-VY@fencepost.gnu.org>
[not found] ` <<83zhaqu89z.fsf@gnu.org>
[not found] ` <<CAGK7Mr48xznD4uc0zxDRqUrYGbsWU4dg2t_CfnpKipzV7_-xbg@mail.gmail.com>
[not found] ` <<83sggiu2p9.fsf@gnu.org>
2020-05-02 17:16 ` Drew Adams
[not found] ` <<83r1w2u20y.fsf@gnu.org>
[not found] ` <<CAGK7Mr7z+L+1Ziptjvc8wBmZDooLfonuL3VOC8OGex+z1d7Oqg@mail.gmail.com>
[not found] ` <<83lfmatym6.fsf@gnu.org>
2020-05-02 17:36 ` Drew Adams
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=20200429172739.GB4002@ACM \
--to=acm@muc.de \
--cc=adam@alphapapa.net \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=jonas@bernoul.li \
--cc=kyle@kyleam.com \
--cc=monnier@iro.umontreal.ca \
--cc=philippe.vaucher@gmail.com \
/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.