all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: 조성빈 <pcr910303@icloud.com>
To: Philippe Vaucher <philippe.vaucher@gmail.com>
Cc: Stefan Kangas <stefan@marxist.se>,
	Emacs developers <emacs-devel@gnu.org>
Subject: Re: Namespaces - summary, conclusion
Date: Mon, 4 May 2020 23:59:59 +0900	[thread overview]
Message-ID: <D1000EA3-B34F-472A-8F39-1F7C7837A345@icloud.com> (raw)
In-Reply-To: <CAGK7Mr6X9p9Gi1Nuj-7gqoQkR0--c_N-iAevJGV9rKFgfDTGGw@mail.gmail.com>

Philippe Vaucher <philippe.vaucher@gmail.com> 작성:

>>> Given this is more or less the position held by Alan, Eli, Richard,
>>> Drew and João I think the chances of seeing new aliases is close to 0.
>>
>> This is not my conclusion.  I've seen several calls to move away from
>> from discussing in the abstract to discuss specific, concrete
>> examples.  I think this is a good idea, since IMHO the abstract
>> discussion is likely exhausted.
>>
>> There is always the chance that some of the proposals will be voted
>> down.  But also consider that some who have disagreed with you in the
>> abstract might be more convinced by specific, concrete proposals.
>
> So far the string- proposal got shot down entirely. The regexp one was
> initially a no-go from Alan but I then Richard kinda liked it and
> proposed adaptations.
>
> @Stefan Monnier: I see that you talked about `multibyte-string-p`
> already (and iirc that didn't went well. You talked earlier about
> `process-`, maybe you'd like to propose some changes there?

I think for people to propose changes and get them adapted, we first have to
have some proper goals to target.

So there are a few people here who think renaming some functions is  
beneficial
- but everybody’s reasoning is different here. Some people who are opposed to
renaming are a bit confused.

I think the two big goals are consistency and discoverability. And then there
are various small arguments like it’s easier to use prefix based completion  
and
function search, it’s easier to guess, namespace means less function name
clashing, etc…

I think consistency is important, and if the language itself wants naming
things the ‘lisp-way’, I’m fine with a consistent naming scheme. I’m not sure
if you’d agree or not, but maybe trying to find a consistent naming scheme  
and
documenting them (which was called as the ‘lisp-way’ by some) might be first.
And then we can rename the ones that don’t follow them.

> I mean I'm willing to propose concrete changes but if it's not obvious
> for string- and regexp- why would it be for other topics? Let's try
> another topic just to see:
>
> rename-file -> file-rename
> delete-file -> file-delete
> copy-file -> file-copy
> expand-file-name -> file-expand-name
>
> Do you think people will be ok with that?

The reason why I said about finding the naming scheme was because both the
function name rename-file and file-truename makes sense to me.

I think some preliminary conventions that Elisp already follows is that the
<action>-<object> scheme is for actions on the object like rename-file or
clear-string, and <object>-<property> scheme is for getting properties of the
object like string-width and file-name-extension. (I’m not considering
polymorphic ones.)

But then there are exceptions, like string-trim (which should then be
trim-string) or string-join (which should then be join-string).

What does everybody think about this? I think it would be less disruptive and
controversial if some Elisp core API guidelines are decided, written, and
followed in the future. Then, if it turns out it’s useful enough, we can  
start
aliasing functions that don’t follow them to names that do follow them (if
it’s desirable to do so.)

> Philippe





  parent reply	other threads:[~2020-05-04 14:59 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-04  9:27 Namespaces - summary, conclusion Philippe Vaucher
2020-05-04 10:11 ` Philippe Vaucher
2020-05-04 11:38 ` Stefan Kangas
2020-05-04 12:42   ` Philippe Vaucher
2020-05-04 13:13     ` Alfred M. Szmidt
2020-05-04 13:24       ` Stefan Kangas
2020-05-04 13:35       ` Joost Kremers
2020-05-04 14:18         ` Alfred M. Szmidt
2020-05-04 15:35           ` tomas
2020-05-04 16:32             ` Philippe Vaucher
2020-05-04 14:59     ` 조성빈 [this message]
2020-05-04 16:28       ` Philippe Vaucher
2020-05-05 10:22       ` 조성빈
2020-05-04 15:00     ` Eli Zaretskii
2020-05-04 16:36       ` Philippe Vaucher
2020-05-04 16:52         ` Alfred M. Szmidt
2020-05-04 16:52         ` Alfred M. Szmidt
2020-05-05 16:12           ` Alfred M. Szmidt
2020-05-04 17:08         ` Eli Zaretskii
2020-05-04 18:47         ` Stefan Monnier
2020-05-04 17:36     ` Stefan Monnier
2020-05-04 18:05       ` Philippe Vaucher
2020-05-04 18:25         ` Drew Adams
2020-05-04 14:43 ` Eli Zaretskii
2020-05-04 16:25   ` Philippe Vaucher
2020-05-04 23:40 ` chad

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=D1000EA3-B34F-472A-8F39-1F7C7837A345@icloud.com \
    --to=pcr910303@icloud.com \
    --cc=emacs-devel@gnu.org \
    --cc=philippe.vaucher@gmail.com \
    --cc=stefan@marxist.se \
    /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.