From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.bugs Subject: bug#61281: =?UTF-8?Q?=E2=80=9C`?=(a \, b)=?UTF-8?Q?=E2=80=9D?= equals to =?UTF-8?Q?=E2=80=9C`?=(a . , b)=?UTF-8?Q?=E2=80=9D?= Date: Mon, 06 Feb 2023 05:11:04 +0100 Message-ID: <87ilgfsaav.fsf@web.de> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11264"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: 61281@debbugs.gnu.org To: Xie Shynur Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Feb 06 05:12:25 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pOsrg-0002op-Vl for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 06 Feb 2023 05:12:25 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pOsrL-0003RI-RA; Sun, 05 Feb 2023 23:12:03 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pOsrK-0003R8-Od for bug-gnu-emacs@gnu.org; Sun, 05 Feb 2023 23:12:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pOsrK-0005Ui-GB for bug-gnu-emacs@gnu.org; Sun, 05 Feb 2023 23:12:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pOsrK-00070r-4t for bug-gnu-emacs@gnu.org; Sun, 05 Feb 2023 23:12:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Michael Heerdegen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 06 Feb 2023 04:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61281 X-GNU-PR-Package: emacs Original-Received: via spool by 61281-submit@debbugs.gnu.org id=B61281.167565667626897 (code B ref 61281); Mon, 06 Feb 2023 04:12:02 +0000 Original-Received: (at 61281) by debbugs.gnu.org; 6 Feb 2023 04:11:16 +0000 Original-Received: from localhost ([127.0.0.1]:47095 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pOsqZ-0006zl-Ue for submit@debbugs.gnu.org; Sun, 05 Feb 2023 23:11:16 -0500 Original-Received: from mout.web.de ([212.227.15.14]:45119) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pOsqX-0006zV-Du for 61281@debbugs.gnu.org; Sun, 05 Feb 2023 23:11:14 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=s29768273; t=1675656664; bh=Tf6li1RRraHLoSk9jF+80FTxMCxDGzP0SQdKIsgt3ss=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date; b=r6BHu9e+q0x777ptfvQD2AGR/xxN2nEfh452yc5of2qghCybbJy/v7oFpuMyJpuUP 5jUaW948Mx3tHLu+y6mu2PVDxoJzSZ8Ij8erOL4Ix/JcS422MF9HgBmQCZqeqy/6/1 MjY+Ysneb3l3eyiv4js5x3fRcVckuzUIjDUBQAMpDEnCEarBmFN8OQ1+DhUCOY88Rh Psv2UKhP0+epGOKtorJpV5MH+FEo84RjDv4FgbqxHcEPeKKvH8Cgrpk+zyb2OJky90 Ql3g0nm/0pDu/zhBaY/hCIuS3ZftXudFxcOei6agcvVaTAU6AXOWf5FuCoJ38gQDuS LHhsBnLr0dyBQ== X-UI-Sender-Class: 814a7b36-bfc1-4dae-8640-3722d8ec6cd6 Original-Received: from drachen.dragon ([84.59.210.57]) by smtp.web.de (mrweb005 [213.165.67.108]) with ESMTPSA (Nemesis) id 1N1d3k-1oRVpo2nDE-0121Ij; Mon, 06 Feb 2023 05:11:04 +0100 In-Reply-To: (Xie Shynur's message of "Sat, 4 Feb 2023 23:23:00 +0000") X-Provags-ID: V03:K1:ryhycDuiODxlqQax5XYEj+4WFDi1ZvunIC5N/HheZMxoLApGICb qWjDHpPi/U41TqExKAdCHj5x7x8E4hQuMQXgWKo95eijbNyu40tN729f05UIWB4IyQtP6SN 3K5vZBBaRmKuJqcdsE7ORSRgpgftEHhGD+WMPrLPz86Lyvuj2/QlLpMd6FvEr+qXZsZm/da m7YjvusRPuu4HdLcEUDuw== UI-OutboundReport: notjunk:1;M01:P0:lJItTUntGoQ=;8xiqJkB0Sb92SNk4TKfkesN2NLs U36eOxRVLXifvsQThuMJpcmTqUo2qD1XfrmRxLxfoWMhDbeB53AiNxohWjZ68b3m4yNkDNK9k 7xQm1M0uugtWIFtPirFJIpzT64/+GwH5rjewmczCotx7gl7gGZmoJuwRDlxRhEAT13VTTk0xy 9qYQ63B9WJk6ffPFexrfH9na0cPmZEdWcYJOqEg4xRBpgN8QzDgvqK8E3BbXo0FAaZwmxB+N+ uop1NZzODRxnmT/Cwfkw08SDmHZGOTA/kBUlSEAW6+tdB/jytaQN3nD5i/w4DXyVydVnw7Xem b0MFUKHuMJYbe9qxuCCs5ZknpiXk88RSg9NfABcnPdITr433wJKEod5wetvLqVlHij2OMzqSM oykdc4k3e01XX61kgQzoWe0dnbL6mpr5rddlv0G3ifdZ8gR6wPWMXbe0Iyr23Jai+9Ue3eiUS E8yI0qoJ7sE7if3FjEpLM4MFHIKFJIjUcwXtH9ccZiFR3Kytu9FOG5yC3hX1SUGZCi/X/pObf yIpDwTZn2b/kCdYS/lNKis9RM0qeGn21tq1jJgNtZUPPq8HoSzWggq8bILkeIkhU5Vo8kWUq3 3rMFDSsrW98nr6PXCyoq/r88ynpqY2TYgygsNVzbOTNK8RctQvZJMP4OeaDF2cKPdzt/5xIuG tpf66iIYqZYpCCSA825bvs5vM/mq5jCzyqj0gCp/izvxoqGerUtQ9OKxKx4OOLBp8mkAq0EaW ToTkvI4hKWhZ/xB/HMKhXdOKKoivCyxJhciLew6uvq8Yg4AHblHm6HMoQK7gcdpG46XPYSS0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:254927 Archived-At: --=-=-= Content-Type: text/plain Xie Shynur writes: > ELISP> `(emacs-version \, emacs-version) > (emacs-version . "28.2") > ``` > (custom-set-variables > '(var `(a . ,b))) > ``` > > Then change some options by GUI menu, and click `Save Options`: > > ``` > (custom-set-variables > '(var `(a \, b)) > '(changed-option new-value)) > ``` > Is it a feature or bug? It doesn't harm (it's not wrong), you see an implementation detail exposed, but it's not nice either. After discussing this and peripheral stuff with others I would suggest (I try to give a complete summary of the useful suggestions here) to do these things: (1) We should try to teach the printer to prefer the syntax (... . ,X) over (... \, X). The latter is equivalent but in most cases the first version will be easier to interpret. This would fix the above case about saving custom variables (readability). (2) We should (in the recently added function docstrings and the manual) explain that the reader constructs `X, ,X and ,@X are expanded to (or equivalent to) (\` X), (\, X) and (\,@ X) respectively, where the cars are the symbols with the names "`", "," and ",@". While this is an implementation detail, not knowing about that fact leaves the semantics of expressions like above unclear, which is not good. (3) Fix the header in backquote.el as suggested by Drew, e.g. like this: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-lisp-emacs-lisp-backquote.el-Small-fix-in-commentary.patch Content-Transfer-Encoding: quoted-printable =46rom 7c8bc97263a1b6d009a11b32d6e62e82fe14e997 Mon Sep 17 00:00:00 2001 From: Michael Heerdegen Date: Mon, 6 Feb 2023 04:47:12 +0100 Subject: [PATCH] ; * lisp/emacs-lisp/backquote.el: Small fix in commentary =2D-- lisp/emacs-lisp/backquote.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/emacs-lisp/backquote.el b/lisp/emacs-lisp/backquote.el index 84527234207..de14b5cd42f 100644 =2D-- a/lisp/emacs-lisp/backquote.el +++ b/lisp/emacs-lisp/backquote.el @@ -25,9 +25,9 @@ ;;; Commentary: -;; When the Lisp reader sees `(...), it generates (\` (...)). -;; When it sees ,... inside such a backquote form, it generates (\, ...). -;; For ,@... it generates (\,@ ...). +;; When the Lisp reader sees `X it generates (\` X). +;; When it sees ,X it generates (\, X). For ,@X it generates +;; (\,@ X). ;; This backquote will generate calls to the backquote-list* form. ;; Both a function version and a macro version are included. =2D- 2.30.2 --=-=-= Content-Type: text/plain Thanks, Michael. --=-=-=--