From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.bugs Subject: bug#40671: [DOC] modify literal objects Date: Tue, 28 Apr 2020 13:09:08 -0700 Organization: UCLA Computer Science Department Message-ID: References: <969b3497-0afd-d104-6792-d744d31548fa@cs.ucla.edu> <2935ec84-bdea-2e20-01b9-8ed08cc61c6c@yandex.ru> <669981e5-f601-5c18-1a8b-ee316ad001ec@cs.ucla.edu> <4b8b7e98-029e-58ac-59ff-6cd984b7eb85@yandex.ru> <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> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="65393"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 Cc: Michael Heerdegen , Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= , ke.vigouroux@laposte.net, 40671@debbugs.gnu.org, Richard Stallman To: Dmitry Gutov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Apr 28 22:18:56 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 1jTWgx-000Gub-Qx for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 28 Apr 2020 22:18:55 +0200 Original-Received: from localhost ([::1]:49350 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTWgw-0002pI-NG for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 28 Apr 2020 16:18:54 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37272) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jTWaR-0001i2-1M for bug-gnu-emacs@gnu.org; Tue, 28 Apr 2020 16:16:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jTWYM-00059l-KK for bug-gnu-emacs@gnu.org; Tue, 28 Apr 2020 16:12:10 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:58317) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jTWYM-00059g-7H for bug-gnu-emacs@gnu.org; Tue, 28 Apr 2020 16:10:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jTWYL-0002q6-V7 for bug-gnu-emacs@gnu.org; Tue, 28 Apr 2020 16:10:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 28 Apr 2020 20:10:01 +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.158810455810859 (code B ref 40671); Tue, 28 Apr 2020 20:10:01 +0000 Original-Received: (at 40671) by debbugs.gnu.org; 28 Apr 2020 20:09:18 +0000 Original-Received: from localhost ([127.0.0.1]:41630 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jTWXd-0002p5-Vh for submit@debbugs.gnu.org; Tue, 28 Apr 2020 16:09:18 -0400 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:58792) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jTWXb-0002os-DR for 40671@debbugs.gnu.org; Tue, 28 Apr 2020 16:09:15 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id E19D916008E; Tue, 28 Apr 2020 13:09:09 -0700 (PDT) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id Hu3KCUaWu8Oi; Tue, 28 Apr 2020 13:09:09 -0700 (PDT) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 049B7160094; Tue, 28 Apr 2020 13:09:09 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id XHJeEMAMRwKQ; Tue, 28 Apr 2020 13:09:08 -0700 (PDT) Original-Received: from [192.168.1.9] (cpe-23-242-74-103.socal.res.rr.com [23.242.74.103]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id A81B216008E; Tue, 28 Apr 2020 13:09:08 -0700 (PDT) Autocrypt: addr=eggert@cs.ucla.edu; prefer-encrypt=mutual; keydata= LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tCgptUUlOQkV5QWNtUUJFQURB QXlIMnhvVHU3cHBHNUQzYThGTVpFb243NGRDdmM0K3ExWEEySjJ0QnkycHdhVHFmCmhweHhk R0E5Smo1MFVKM1BENGJTVUVnTjh0TFowc2FuNDdsNVhUQUZMaTI0NTZjaVNsNW04c0thSGxH ZHQ5WG0KQUF0bVhxZVpWSVlYL1VGUzk2ZkR6ZjR4aEVtbS95N0xiWUVQUWRVZHh1NDd4QTVL aFRZcDVibHRGM1dZRHoxWQpnZDdneDA3QXV3cDdpdzdlTnZub0RUQWxLQWw4S1lEWnpiRE5D UUdFYnBZM2VmWkl2UGRlSStGV1FONFcra2doCnkrUDZhdTZQcklJaFlyYWV1YTdYRGRiMkxT MWVuM1NzbUUzUWpxZlJxSS9BMnVlOEpNd3N2WGUvV0szOEV6czYKeDc0aVRhcUkzQUZINmls QWhEcXBNbmQvbXNTRVNORnQ3NkRpTzFaS1FNcjlhbVZQa25qZlBtSklTcWRoZ0IxRApsRWR3 MzRzUk9mNlY4bVp3MHhmcVQ2UEtFNDZMY0ZlZnpzMGtiZzRHT1JmOHZqRzJTZjF0azVlVThN Qml5Ti9iClowM2JLTmpOWU1wT0REUVF3dVA4NGtZTGtYMndCeHhNQWhCeHdiRFZadWR6eERa SjFDMlZYdWpDT0pWeHEya2wKakJNOUVUWXVVR3FkNzVBVzJMWHJMdzYrTXVJc0hGQVlBZ1Jy NytLY3dEZ0JBZndoU In-Reply-To: <72399223-0ab5-dbe4-5027-d929450a4df0@yandex.ru> Content-Language: en-US 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:179246 Archived-At: On 4/28/20 12:33 PM, Dmitry Gutov wrote: > And then I explain why "constant" is bad, multiple times. With examples from > other languages. The word "constant" means different things in different programming languages. The meaning used in the Elisp manual is reasonably close to its meaning in C/C++/Fortran/Common Lisp/etc., and that describes how Emacs behaves now. We'd prefer it if Emacs behaved more like what Python does with its immutable objects, and some day we should change Emacs to do that. When we do so, we can modify the Elisp manual accordingly. In the meantime we need to document what we have. > Emacs users are not C programmers. Of course not, but this area needs documentation and when the Emacs concept is similar to an already-existing one in C/C++/etc. it's not necessarily a bad thing to adopt their terminology and/or notation, even if that terminology/notation happens to mean something else in other contexts. >>> There is a particular kind of values called fizzleworp (see {String >>> literals}, {Quote} and {Backquote}), which are dangerous to modify. >> >> Let's not go that route. It'd be overdocumenting internal details that are not >> generally known. I don't know all the details, so I couldn't write all that >> documentation without a lot of nontrivial investigation. And these details are >> likely to change so users should not rely on them anyway. > > That's not what I was suggesting. I gave an example on using the words, not on > which cases to enumerate. Then I don't understand your suggestion. I thought you were saying that we should distinguish among the types of constants and should say what happens when you modify each type. The manual already does this to a very limited extent, and I thought you were suggesting that it should do a reasonably exhaustive job of it, in order to greatly limit the area where Emacs behavior is undefined. I'd rather not go that route generally, for the reasons stated above. That being said, it might make sense to make some changes in this area. Or perhaps I'm still misunderstanding you, in which case further clarification would be helpful. A simple way to be clear in this area is to propose specific wording changes, preferably in git format-patch form. It's not enough to say "I don't like the word 'constant'." > The map still has to circle the wilderness on the map somehow. Yes, and the documentation does that now. The edge of the wild is the line between constants and non-constants. A program that tries to modify a constant is out in the wilderness.