From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#42296: 27.0.91; Correct manual entry for 'concat' w.r.t. allocation [PATCH] Date: Fri, 10 Jul 2020 21:08:44 +0300 Message-ID: <834kqfp7ir.fsf@gnu.org> References: <83wo3cppc5.fsf@gnu.org> <669987BB-B825-4C2C-B9FD-31F04E0D6013@acm.org> <83r1tkplnc.fsf@gnu.org> <83o8oopk4s.fsf@gnu.org> <70B05C00-862D-412B-83DA-7129BF49C322@acm.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="32470"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 42296@debbugs.gnu.org To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Jul 10 20:10:10 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 1jtxTN-0008L1-Mn for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 10 Jul 2020 20:10:09 +0200 Original-Received: from localhost ([::1]:48708 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jtxTM-0007Ve-Ju for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 10 Jul 2020 14:10:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40466) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jtxTG-0007VU-MJ for bug-gnu-emacs@gnu.org; Fri, 10 Jul 2020 14:10:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:60063) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jtxTG-0003Kj-DT for bug-gnu-emacs@gnu.org; Fri, 10 Jul 2020 14:10:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jtxTG-0001GY-5m for bug-gnu-emacs@gnu.org; Fri, 10 Jul 2020 14:10:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 10 Jul 2020 18:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42296 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 42296-submit@debbugs.gnu.org id=B42296.15944045454797 (code B ref 42296); Fri, 10 Jul 2020 18:10:02 +0000 Original-Received: (at 42296) by debbugs.gnu.org; 10 Jul 2020 18:09:05 +0000 Original-Received: from localhost ([127.0.0.1]:43376 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jtxSK-0001FI-Qu for submit@debbugs.gnu.org; Fri, 10 Jul 2020 14:09:05 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:54728) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jtxSI-0001Em-Ao for 42296@debbugs.gnu.org; Fri, 10 Jul 2020 14:09:03 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:39785) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jtxSD-0003Gr-0u; Fri, 10 Jul 2020 14:08:57 -0400 Original-Received: from [176.228.60.248] (port=1807 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1jtxSC-0007WD-HT; Fri, 10 Jul 2020 14:08:56 -0400 In-Reply-To: <70B05C00-862D-412B-83DA-7129BF49C322@acm.org> (message from Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= on Fri, 10 Jul 2020 19:04:48 +0200) 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" Xref: news.gmane.io gmane.emacs.bugs:182899 Archived-At: > From: Mattias EngdegÄrd > Date: Fri, 10 Jul 2020 19:04:48 +0200 > Cc: 42296@debbugs.gnu.org > > 9 juli 2020 kl. 21.24 skrev Eli Zaretskii : > > > This function frequently, but not always, constructs a new string > > that is not @code{eq} to any existing string. Lisp programs should > > not rely on the result being a new string nor on it being @code{eq} > > to an existing string. > > > > When this function returns a string @code{eq] to another, changing > > the result will also change that other string; to avoid that, use > > @code{copy-sequence} on the result. > > Thank you! First a minor detail: the word 'frequently' doesn't convey any useful information since the user isn't supposed to take any chances -- either the returned value is always new and unaliased, or there is no such guarantee. The frequency isn't relevant, and we shouldn't encourage the user to act as if it were by talking about it. "Frequently" describes what actually happens. Describing facts is not "encouraging" users to do anything, especially since the very next sentence tells them not to draw any far-reaching conclusions. IOW, we should treat our users as grown-up adults, not as children from whom we need to hide information. > This function does not always allocate a new string. Callers should > not rely on the result being a new string nor on it being @code{eq} > to an existing string. > > In particular, the returned value should not be altered. To obtain > a string that can be mutated, use @code{copy-sequence} on the result. Fine with me, except that "should not be altered": I object to that, unless we explain why. My proposed text included such an explanation; without it, this looks like another dogma that someone sooner or later will come up and challenge. Thanks.