From: Emanuel Berg via Users list for the GNU Emacs text editor <help-gnu-emacs@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: problems with Emacs 28
Date: Sun, 25 Oct 2020 00:08:03 +0200 [thread overview]
Message-ID: <87wnzfqnuk.fsf@zoho.eu> (raw)
In-Reply-To: 3cec75b0-410b-40c7-97c3-d04667c4c04d@default
Drew Adams wrote:
>>> What is that bang (explication mark) syntax BTW?
>>
>> That comes from the scheme tradition: it is used for functions that
>> modify something (state), unlike "pure" functions that "only"
>> calculate a return value. E.g. `+', `car' vs. `setcar!' etc., you
>> get it.
>
> FWIW, I think it's a mistake for Emacs to adopt that convention now,
> or at least it's a mistake to adopt it only partially.
>
> If users can't depend on it, to let them know if a function might
> modify data destructively, then it can mislead, and so be even more
> "dangerous". Now, we really need a giant sign saying that you can't
> rely on a destructive function's name having a suffix of `!'.
>
> Same thing for Scheme's `?' suffix, to indicate a predicate.
> Elisp uses the more traditional Lisp suffix of `p' for a predicate.
> Introducing `?' now, in only a partial way, wouldn't help, and it
> might confuse. Of course, that's trivial compared with the effect of
> possible confusion over destructive modification. (Yes, I know `?'
> hasn't been proposed as a suffix for predicates. Just sayin.)
Agree 100%. It makes the code disruptive to read and is slower to
type. The usefulness isn't obvious to me, either.
--
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal
next prev parent reply other threads:[~2020-10-24 22:08 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-23 16:50 problems with Emacs 28 Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-23 17:33 ` Jean Louis
2020-10-23 18:02 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-23 18:00 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-24 1:55 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-24 12:56 ` Stefan Monnier
2020-10-24 12:57 ` Stefan Monnier
2020-10-24 9:46 ` Michael Heerdegen
2020-10-24 17:00 ` Drew Adams
2020-10-24 19:26 ` Michael Heerdegen
2020-10-24 22:11 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-24 22:08 ` Emanuel Berg via Users list for the GNU Emacs text editor [this message]
2020-10-25 12:13 ` Michael Heerdegen
2020-10-25 14:15 ` Drew Adams
2020-10-27 0:29 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-27 10:22 ` Michael Heerdegen
2020-10-28 16:21 ` Jens C. Jensen
2020-10-28 17:07 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-28 17:18 ` Stefan Monnier
2020-10-31 18:26 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-11-01 13:51 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-23 18:16 ` Eli Zaretskii
2020-10-23 18:22 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-23 18:44 ` Stefan Monnier
2020-10-24 0:13 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-23 19:09 ` Gregory Heytings via Users list for the GNU Emacs text editor
2020-10-24 0:14 ` Emanuel Berg via Users list for the GNU Emacs text editor
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wnzfqnuk.fsf@zoho.eu \
--to=help-gnu-emacs@gnu.org \
--cc=moasenwood@zoho.eu \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).