From: Eli Zaretskii <eliz@gnu.org>
To: rms@gnu.org
Cc: db48x@db48x.net, matt@rfc20.org, conao3@gmail.com,
monnier@iro.umontreal.ca, emacs-devel@gnu.org
Subject: Re: [PATCH] Interpret #r"..." as a raw string
Date: Fri, 05 Mar 2021 10:01:28 +0200 [thread overview]
Message-ID: <83y2f2xc4n.fsf@gnu.org> (raw)
In-Reply-To: <E1lI3BP-0007PO-7U@fencepost.gnu.org> (message from Richard Stallman on Fri, 05 Mar 2021 00:39:27 -0500)
> From: Richard Stallman <rms@gnu.org>
> Cc: eliz@gnu.org, db48x@db48x.net, conao3@gmail.com,
> monnier@iro.umontreal.ca, emacs-devel@gnu.org
> Date: Fri, 05 Mar 2021 00:39:27 -0500
>
> In Lisp, a program is a data structure. It does not contain string
> literals -- it contains strings. Thus, various sections of the manual
> can talk about what happens if you use a string in a certain
> expression, but they don't need to talk about the printed representation
> of that expression.
I understand what you are saying, but still there is a difference
between
(concat foo bar)
and
(concat foo "what we call a literal string")
Even if 'bar's value is the same string as the one that appears
literally in the second example, there's at least a visual difference.
And in fact, the difference is not only visual, because the
byte-compiler is allowed to treat such "literal" strings specially in
some situations. This is one reason why the ELisp manual mentions
literal strings: it needs to describe those special situations and the
pitfalls they bring with them.
Another reason is that many (most?) readers understand "literal
string" in the sense of the above example, so it is a convenient way
of making sure the reader understands what is being discussed.
Why is it harmful to use this terminology in conjunction with Lisp,
even though its semantics in Lisp is somewhat different?
next prev parent reply other threads:[~2021-03-05 8:01 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-26 18:18 [PATCH] Interpret #r"..." as a raw string Naoya Yamashita
2021-02-26 18:27 ` [External] : " Drew Adams
2021-02-26 18:53 ` Naoya Yamashita
2021-02-26 19:03 ` Drew Adams
2021-02-26 19:48 ` Stefan Monnier
2021-02-26 20:23 ` Naoya Yamashita
2021-02-26 20:34 ` Andreas Schwab
2021-02-26 20:39 ` Naoya Yamashita
2021-02-26 20:45 ` Andreas Schwab
2021-02-26 20:50 ` Naoya Yamashita
2021-02-26 20:54 ` Andreas Schwab
2021-02-26 20:03 ` Eli Zaretskii
2021-02-26 20:34 ` Naoya Yamashita
2021-02-26 19:09 ` Andreas Schwab
2021-02-26 20:00 ` Eli Zaretskii
2021-02-27 0:39 ` Daniel Brooks
2021-02-27 16:14 ` Richard Stallman
2021-02-27 16:18 ` Stefan Monnier
2021-03-01 5:19 ` Richard Stallman
2021-03-02 5:45 ` Matt Armstrong
2021-03-03 5:53 ` Richard Stallman
2021-03-03 6:14 ` Daniel Brooks
2021-03-03 7:00 ` Eli Zaretskii
2021-03-04 2:47 ` Matt Armstrong
2021-03-04 13:49 ` Eli Zaretskii
2021-03-04 16:55 ` Matt Armstrong
2021-03-05 5:44 ` Richard Stallman
2021-03-05 5:39 ` Richard Stallman
2021-03-05 8:01 ` Eli Zaretskii [this message]
2021-03-06 5:13 ` Richard Stallman
2021-03-06 6:04 ` Matt Armstrong
2021-03-07 6:13 ` Richard Stallman
2021-03-07 17:20 ` [External] : " Drew Adams
2021-03-06 8:27 ` Eli Zaretskii
2021-03-06 9:51 ` Daniel Brooks
2021-03-06 10:24 ` Eli Zaretskii
2021-03-07 6:08 ` Richard Stallman
2021-02-27 20:41 ` Daniel Brooks
2021-02-28 6:22 ` Zhu Zihao
2021-03-01 5:26 ` Richard Stallman
2021-03-01 12:06 ` Alan Mackenzie
2021-03-01 12:13 ` Andreas Schwab
2021-03-02 5:59 ` Matt Armstrong
2021-03-02 9:56 ` Daniel Brooks
2021-03-02 10:13 ` Andreas Schwab
2021-03-02 10:55 ` Daniel Brooks
2021-03-02 11:18 ` Andreas Schwab
2021-03-02 11:26 ` Daniel Brooks
2021-03-02 11:14 ` Alan Mackenzie
2021-03-02 11:52 ` Daniel Brooks
2021-03-02 12:01 ` Dmitry Gutov
2021-03-02 14:14 ` Alan Mackenzie
2021-03-02 14:32 ` Dmitry Gutov
2021-03-02 15:06 ` Alan Mackenzie
2021-03-02 11:41 ` Aurélien Aptel
2021-03-02 13:49 ` Stefan Monnier
2021-03-02 14:46 ` Aurélien Aptel
2021-03-02 15:11 ` Stefan Monnier
2021-03-02 16:07 ` Aurélien Aptel
2021-03-03 7:31 ` Alfred M. Szmidt
2021-03-03 16:02 ` Stefan Monnier
2021-03-02 20:36 ` Daniel Brooks
2021-03-03 0:27 ` Stefan Monnier
2021-03-03 0:42 ` Daniel Brooks
2021-03-03 8:16 ` Andreas Schwab
2021-03-03 9:25 ` Daniel Brooks
2021-03-03 9:29 ` Andreas Schwab
2021-03-03 10:02 ` Daniel Brooks
2021-03-03 10:11 ` Daniel Brooks
2021-03-03 10:14 ` Andreas Schwab
2021-03-03 11:48 ` Daniel Brooks
2021-03-03 10:12 ` Michael Albinus
2021-03-03 10:42 ` Daniel Brooks
2021-03-03 10:49 ` Michael Albinus
2021-03-03 16:12 ` Stefan Monnier
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=83y2f2xc4n.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=conao3@gmail.com \
--cc=db48x@db48x.net \
--cc=emacs-devel@gnu.org \
--cc=matt@rfc20.org \
--cc=monnier@iro.umontreal.ca \
--cc=rms@gnu.org \
/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).