From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#40671: [DOC] modify literal objects Date: Fri, 1 May 2020 15:05:11 -0700 (PDT) Message-ID: <10f088bf-c5d7-4d20-a704-86e4d35b087b@default> References: <530d3597-aaaa-f019-bafa-8229d13e7248@yandex.ru> <60b88f52-c50d-c57a-9ce5-495e6157d36e@cs.ucla.edu> <0721d8c1-4fe3-335c-7dbc-171487cb648a@yandex.ru> <6d1015da-0dc1-376c-f84b-5e3ee3149213@cs.ucla.edu> <286139d2-bbe1-2d5a-bec1-f781666376f1@yandex.ru> <10b89e6f-6fa6-f855-65b6-3361a74472d3@cs.ucla.edu> <8542efe2-c4a6-1da5-2513-7ffcaa6c4ec9@yandex.ru> <293d0eab-4617-08fe-aafa-d6841a750af0@cs.ucla.edu> <4085994e-f42d-b90f-9c86-ad42689bbff2@yandex.ru> <9cfc3b63-7df6-145a-8a78-e3320b6d3861@cs.ucla.edu> <72399223-0ab5-dbe4-5027-d929450a4df0@yandex.ru> <1a2d0454-baa4-9831-0e2c-4411eda1c2fe@yandex.ru> <278a1350-8b9e-4f3b-854a-723d578129f3@default> <6cbe3c10-6d81-f2be-30d7-17096b3f3517@yandex.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="112725"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Michael Heerdegen , Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= , ke.vigouroux@laposte.net, 40671@debbugs.gnu.org, Richard Stallman To: Paul Eggert , Dmitry Gutov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat May 02 00:06:44 2020 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 1jUdnt-000T9U-Uw for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 02 May 2020 00:06:42 +0200 Original-Received: from localhost ([::1]:36642 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jUdns-0007es-Sh for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 01 May 2020 18:06:40 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59212) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jUdnH-0006ha-QU for bug-gnu-emacs@gnu.org; Fri, 01 May 2020 18:06:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jUdnH-0006Nn-0w for bug-gnu-emacs@gnu.org; Fri, 01 May 2020 18:06:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:39316) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jUdnG-0006Mk-JV for bug-gnu-emacs@gnu.org; Fri, 01 May 2020 18:06:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jUdnG-0000Ia-D4 for bug-gnu-emacs@gnu.org; Fri, 01 May 2020 18:06:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 01 May 2020 22:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 40671 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 40671-submit@debbugs.gnu.org id=B40671.15883707271099 (code B ref 40671); Fri, 01 May 2020 22:06:02 +0000 Original-Received: (at 40671) by debbugs.gnu.org; 1 May 2020 22:05:27 +0000 Original-Received: from localhost ([127.0.0.1]:50861 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jUdmh-0000Hf-AG for submit@debbugs.gnu.org; Fri, 01 May 2020 18:05:27 -0400 Original-Received: from aserp2120.oracle.com ([141.146.126.78]:34434) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jUdme-0000HR-S2 for 40671@debbugs.gnu.org; Fri, 01 May 2020 18:05:25 -0400 Original-Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 041Lx5wR158487; Fri, 1 May 2020 22:05:15 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=WdEl4y1A8tX2RAHRTJ79uSXSuYxR7bcxHiOIl5hsYko=; b=agWAVoioFL79qvWqZFE0S1Zeg8Eb6xye0ruM0vISjjdUozSE+8d9pNBC/rXk+gBMSmVl xPHZzcYPUqIwcgC3/WVGXe7sI2hFPN4IUdnHieit7NHPkzPMlChKVESAGGl4cRwHuha2 LzMx4l3UtN9YG1LfkVMl4FbBSGHntbadrRbkV5wpgAjgz95tDUGw/K29f44dWlHQQn2f 0mHxhmR3SOVvs9mfu3DlaFvZuhhKZH35AUG5WwXXmYYq0komTAmstxP+hnI4UiGZRgSx 2M23IpiQqoF2ikDgheM8FpLfqS9uYBVjAP4WwO8dKlwgfQE/ZolnQmFREKVi+6uhdKz3 oA== Original-Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by aserp2120.oracle.com with ESMTP id 30r7f3m7dq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 01 May 2020 22:05:15 +0000 Original-Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 041LuXCM129917; Fri, 1 May 2020 22:05:15 GMT Original-Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by aserp3030.oracle.com with ESMTP id 30r7f53v3a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 01 May 2020 22:05:15 +0000 Original-Received: from abhmp0012.oracle.com (abhmp0012.oracle.com [141.146.116.18]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 041M5CkK021197; Fri, 1 May 2020 22:05:13 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4993.0 (x86)] X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9608 signatures=668687 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=1 phishscore=0 adultscore=0 spamscore=0 mlxlogscore=999 bulkscore=0 mlxscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2005010154 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9608 signatures=668687 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 suspectscore=1 phishscore=0 mlxlogscore=999 impostorscore=0 spamscore=0 mlxscore=0 priorityscore=1501 lowpriorityscore=0 malwarescore=0 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2005010154 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Received-From: 209.51.188.43 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" Xref: news.gmane.io gmane.emacs.bugs:179467 Archived-At: > >> Here's a quote from CLtL2 (page 115): > >> > >> "it is an error to destructively modify any object that appears as a > >> constant in executable code, whether within a 'quote' special form or = as > >> a self-evaluating form." > > > > As Drew pointed out (and if I understood this correctly), the above > > specification leads to implementations that do raise an error when > > someone tried to modify such a value. >=20 > Although those implementations conform to the Common Lisp spec, that's > because the spec explicitly says such behavior is undefined - which means > implementations can signal an error, dump core, or do whatever else > they want. > See > /clm/node11.html__;!!GqivPVa7Brio!NeqWMrCFKgi8Ktwdz5aIkeBh_-TPzH- > XiJbWDMeSRu1VKiI70b5LK6Sy2v5CMxaq$ >, which uses > "should" in the same sense the emacs-27 elisp manual uses "should". I stand corrected. I was assuming that the "proposal" I cited had actually been adopted for CLTL2. So CLTL2 is in the same boat as CLTL(1), in the regard relevant to this thread: There is NO systematic raising of an error - no prevention of the gotcha. So what I said about Elisp being like CLTL(1) applies also to CLTL2: We should NOT say that you _cannot_ do XYZ (because you might be able to, and the behavior if you try is undefined). We should instead say that you _should not_. We're still circling, though. But thanks for clarifying that "it's an error" meaning. I misremembered that as meaning that a conformant implementation is required to raise an error. I was thinking/assuming that the cited proposal was in fact adopted as part of the CL definition.