From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Deus Max Newsgroups: gmane.emacs.bugs Subject: bug#33998: 27.0.50; cl-delete does not delete the first list element Date: Tue, 08 Jan 2019 00:46:28 +0200 Message-ID: <87va30rsqj.fsf@aia00054aia.gr> References: <87muodud4d.fsf@aia00054aia.gr> <877efgte1k.fsf@aia00054aia.gr> <219daf3c-1341-a2aa-6d0e-6388c4a3184b@yandex.ru> <87a7kcmb2z.fsf@gmail.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1546901109 14214 195.159.176.226 (7 Jan 2019 22:45:09 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 7 Jan 2019 22:45:09 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: 33998@debbugs.gnu.org, Dmitry Gutov To: =?UTF-8?Q?Jo=C3=A3o_?= =?UTF-8?Q?T=C3=A1vora?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jan 07 23:45:04 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ggddn-0003YQ-GA for geb-bug-gnu-emacs@m.gmane.org; Mon, 07 Jan 2019 23:45:03 +0100 Original-Received: from localhost ([127.0.0.1]:54524 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ggdfu-0007z0-GM for geb-bug-gnu-emacs@m.gmane.org; Mon, 07 Jan 2019 17:47:14 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:46105) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ggdfn-0007yD-EA for bug-gnu-emacs@gnu.org; Mon, 07 Jan 2019 17:47:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ggdfl-00039i-AC for bug-gnu-emacs@gnu.org; Mon, 07 Jan 2019 17:47:07 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:49780) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ggdfh-000324-OO for bug-gnu-emacs@gnu.org; Mon, 07 Jan 2019 17:47:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ggdfh-0001ND-Kt for bug-gnu-emacs@gnu.org; Mon, 07 Jan 2019 17:47:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Deus Max Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 07 Jan 2019 22:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33998 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 33998-submit@debbugs.gnu.org id=B33998.15469012015236 (code B ref 33998); Mon, 07 Jan 2019 22:47:01 +0000 Original-Received: (at 33998) by debbugs.gnu.org; 7 Jan 2019 22:46:41 +0000 Original-Received: from localhost ([127.0.0.1]:49061 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ggdfM-0001MO-S8 for submit@debbugs.gnu.org; Mon, 07 Jan 2019 17:46:41 -0500 Original-Received: from mout.gmx.net ([212.227.17.22]:35679) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ggdfK-0001MA-O6 for 33998@debbugs.gnu.org; Mon, 07 Jan 2019 17:46:39 -0500 Original-Received: from dellcorei5dias ([5.55.202.130]) by mail.gmx.com (mrgmx101 [212.227.17.174]) with ESMTPSA (Nemesis) id 0MC8iq-1gXsEp3Gzo-008sZb; Mon, 07 Jan 2019 23:46:31 +0100 In-Reply-To: <87a7kcmb2z.fsf@gmail.com> ("=?UTF-8?Q?Jo=C3=A3o_?= =?UTF-8?Q?T=C3=A1vora?="'s message of "Mon, 07 Jan 2019 21:06:44 +0000") X-Provags-ID: V03:K1:RV2ECgozeLYB2QWxvwNOMy03GRG73LePget+Kjmue5vR4DdkzuA mgQHQsBKNWppXbsc4UiCmoEUjPVxnJMoPcqVMo4xcLJq4Rtt4DS4sEOMovH1wAfwJbkSnyg xDXKc9h0jTePiA5H9jxcxGtJRnjgyMtsaMHPtesp3AwthnkUuElIhtoKGXUHRInDY02sKpX hgxVkqw+5tbSdfJpSBRpg== X-UI-Out-Filterresults: notjunk:1;V03:K0:vc4o6SrZ4/k=:vC9ZXx8k7B8AheAKNDUftC 1/wV97q3mvRVHsczCHwSkhcaxhJcyP2Dxt4Rlb66dyONIs55gjvsWIb/nCwPRKwVXVgRT7TTT QnZNNpnFTUFAfFUZcwb1XYLP60Iz4vCXXWCk8L6YNTj3r+UVW37P20HrXtoMUeuSHwq9n8nMI jYB0aKwelJWOhp7OS026bi45a5YyfnLKPNrJ4eJTyT25Ro/UVhjBiYSzJOr+ekQhd8aslzQoe ecDSYHy3UcEgCOtC+28HUxVI7xhOrgrZgjr1JqDVIQmFSQbiJvp0+SmT1oIl0ufmSynkpSwEk q/7Pkxy2+Vjua761uUFbzi8rsZRFX12SCY6WycnywBdzsnOxPuPDdgCk0OujdH/dgKfiEVn2i ASabDfZInYqRtOG8D5vUOFNdNtipdoPQD4hlch9aDH5hpTzPoNug/aC4FNSTsn5ujVP848r4N OuQ0yjxaDjg1BjL5Wwnjrd5WsGknyNr4HDqmCjCDANmoUiWq7wcmpyrPigWVYzSMbA/vWFOeF JmZdVU0tQVIt7IwcyRUGGP1IsPz98D/ZAbq44QNPZyigIX39RR3aTYPntaWZ3X1ROckB/LdUM +nbdNr5G+h/RsogwEjNB32TuvJ7Z0W3l9G9ev1+balo0fqwje4F5voBFJ3zoJFVKqbnQ59nGE wUpP14F0eUSUa9jdUo2csOGneOJ1NX6uKsdxvFlMBT6+GWLRC0u0MZUoO4s6NTDs3TaDJcnGj jMstzQ24UvEU7k3T0115BIjwHWAh2TFCacFuFXQwQyn4MHM3eGz/OPtUJYTiJUvxwxjZD80S X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] 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.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:154239 Archived-At: On Mon, Jan 07 2019, Jo=C3=A3o T=C3=A1vora wrote: > Emacs's cl-delete attempts to emulate Common Lisp's CL:DELETE. In Emacs > it behaves, in this regard, no different from delete or delq. It is > "potentially destructive" because it *may* modify the *structure* of the > sequence *value* that you pass to it, be it a linked list or a vector: > > 1) If it is a linked list, it does the trick of making the pointer > before the element you want to delete point to the element after it; > > 2) If it is a vector, it moves all the vector elements after the one you > want to delete back one position and readjusts the vector size. > > If you notice, for situation 2 you could theoretically affect the > variable binding directly. And curiously, this is where I found > differences between Emacs's cl-delete and some CL's implementation of > CL:DELETE. > > Emacs: > > (setq bla (vector 1 2 3 4)) > (delete 1 bla) =3D> [2 3 4] > bla =3D> [1 2 3 4] >=20=20=20=20=20=20 > (setq bla (vector 1 2 3 4)) > (cl-delete 1 bla) =3D> [2 3 4] > bla =3D> [1 2 3 4] > > Allegro common lisp and CMU common lisp: > > (setq bla (vector 1 2 3 4)) > (delete 1 bla) =3D> #(2 3 4)=20 > bla =3D> #(2 3 4) > > SBCL common lisp: > > (setq bla (vector 1 2 3 4)) > (delete 1 bla) =3D> #(2 3 4) > bla =3D> #(2 3 4 4) > > So, for vector sequences, CL:DELETE is apparently allowed to do > whatever. Reading the hyperspec, it seems that all these results are > correct, even SBCL's. > > Jo=C3=A3o Wow! thanks for clarifying the points. I had to fire up my SBCL to see it !