From: Drew Adams <drew.adams@oracle.com>
To: "Mattias Engdegård" <mattiase@acm.org>,
"Stefan Monnier" <monnier@iro.umontreal.ca>
Cc: Juanma Barranquero <lekktu@gmail.com>,
Emacs developers <emacs-devel@gnu.org>
Subject: RE: master a6b5985: Avoid duplicated character classes in rx
Date: Tue, 3 Dec 2019 09:39:50 -0800 (PST) [thread overview]
Message-ID: <abcc229a-3e33-40dc-a2ee-b92894a47033@default> (raw)
In-Reply-To: <79A83C7D-610F-4CA4-B5E9-7F11FD8A9365@acm.org>
> > I'd rather fix the code not to rely on the return value.
>
> I'm sure a lot more code relies on the return value of 'push'.
> It's also well-defined in Common Lisp. Why not just document it?
+1.
My guess is that this doc lack might have just
been an oversight.
Prior to Emacs 21 (or possibly 22), `push' was
defined only in `cl.el' (with no `cl-' prefix).
Its doc string said this:
push is a Lisp macro in `cl.el'.
(push X PLACE)
(push X PLACE): insert X at the head of the list stored in PLACE.
Analogous to (setf PLACE (cons X PLACE)), though more careful about
evaluating each argument only once and in the right order. PLACE may
be a symbol, or any generalized variable allowed by `setf'.
IOW, even though that version of `push' was
supposed to be an Emacs emulation of Common
Lisp `push', there's no mention of the return
value. There should have been.
`push' was moved outside of `cl.el' in Emacs 22
(or 21 possibly). Its doc string was not fixed
to specify the return value.
`cl-pushnew' has the same doc problem: no spec
of the return value.
We should specify the return value for each of
these. It is as important to `push' as it is
to `pop' (whose doc does specify the return
value).
Common Lisp specifies the return value:
http://clhs.lisp.se/Body/m_push.htm
next prev parent reply other threads:[~2019-12-03 17:39 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20191203142243.9552.27513@vcs0.savannah.gnu.org>
[not found] ` <20191203142246.0615C20A2B@vcs0.savannah.gnu.org>
2019-12-03 15:08 ` master a6b5985: Avoid duplicated character classes in rx Juanma Barranquero
2019-12-03 15:26 ` Stefan Monnier
2019-12-03 15:33 ` Mattias Engdegård
2019-12-03 16:01 ` Stefan Monnier
2019-12-03 16:06 ` Juanma Barranquero
2019-12-03 17:37 ` Eli Zaretskii
2019-12-03 17:46 ` Juanma Barranquero
2019-12-03 18:34 ` Stefan Monnier
2019-12-03 18:12 ` Drew Adams
2019-12-03 17:39 ` Stefan Monnier
2019-12-03 17:51 ` Juanma Barranquero
2019-12-03 18:36 ` Stefan Monnier
2019-12-03 18:43 ` Juanma Barranquero
2019-12-04 4:36 ` Richard Stallman
2019-12-04 5:38 ` Juanma Barranquero
2019-12-03 19:20 ` Michael Welsh Duggan
2019-12-03 20:21 ` Stefan Monnier
2019-12-04 11:22 ` Mattias Engdegård
2019-12-06 18:49 ` Juanma Barranquero
2019-12-06 19:45 ` Drew Adams
2019-12-06 20:11 ` Juanma Barranquero
2019-12-10 3:27 ` Adam Porter
2019-12-10 4:13 ` Stefan Monnier
2019-12-10 4:20 ` Adam Porter
2019-12-10 6:09 ` Juanma Barranquero
2019-12-10 6:32 ` Juanma Barranquero
2019-12-06 19:46 ` Eli Zaretskii
2019-12-07 4:48 ` Richard Stallman
2019-12-07 5:45 ` Juanma Barranquero
2019-12-07 15:18 ` Drew Adams
2019-12-08 5:13 ` Richard Stallman
2019-12-03 17:39 ` Drew Adams [this message]
2019-12-03 15:36 ` Juanma Barranquero
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=abcc229a-3e33-40dc-a2ee-b92894a47033@default \
--to=drew.adams@oracle.com \
--cc=emacs-devel@gnu.org \
--cc=lekktu@gmail.com \
--cc=mattiase@acm.org \
--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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
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).