From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#20056: 25.0.50; Remove non Common Lisp stuff from cl*.el libraries Date: Sun, 8 Mar 2015 14:12:20 -0700 (PDT) Message-ID: <67b0e9f7-5f3f-4a6f-8f07-91e88d881c3b@default> References: <54FC9340.2030703@dancol.org> <4fd5309f-c0bd-486d-8612-a2f724643a2e@default> <54FC9ED3.9000102@dancol.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1425849213 22023 80.91.229.3 (8 Mar 2015 21:13:33 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 8 Mar 2015 21:13:33 +0000 (UTC) To: Daniel Colascione , 20056@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Mar 08 22:13:20 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1YUiVd-0003RO-Hz for geb-bug-gnu-emacs@m.gmane.org; Sun, 08 Mar 2015 22:13:13 +0100 Original-Received: from localhost ([::1]:40575 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YUiVc-0000MX-Ji for geb-bug-gnu-emacs@m.gmane.org; Sun, 08 Mar 2015 17:13:12 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48119) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YUiVX-0000JE-SP for bug-gnu-emacs@gnu.org; Sun, 08 Mar 2015 17:13:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YUiVS-0000yS-Pu for bug-gnu-emacs@gnu.org; Sun, 08 Mar 2015 17:13:07 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:41239) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YUiVS-0000yO-MZ for bug-gnu-emacs@gnu.org; Sun, 08 Mar 2015 17:13:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1YUiVS-0004hH-AV for bug-gnu-emacs@gnu.org; Sun, 08 Mar 2015 17:13: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: Sun, 08 Mar 2015 21:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 20056 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 20056-submit@debbugs.gnu.org id=B20056.142584915618016 (code B ref 20056); Sun, 08 Mar 2015 21:13:02 +0000 Original-Received: (at 20056) by debbugs.gnu.org; 8 Mar 2015 21:12:36 +0000 Original-Received: from localhost ([127.0.0.1]:39807 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YUiV1-0004gV-Qg for submit@debbugs.gnu.org; Sun, 08 Mar 2015 17:12:36 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:38296) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YUiUz-0004gH-AJ for 20056@debbugs.gnu.org; Sun, 08 Mar 2015 17:12:34 -0400 Original-Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id t28LCJTZ021106 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 8 Mar 2015 21:12:20 GMT Original-Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by aserv0021.oracle.com (8.13.8/8.13.8) with ESMTP id t28LCJWW029886 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Sun, 8 Mar 2015 21:12:19 GMT Original-Received: from abhmp0007.oracle.com (abhmp0007.oracle.com [141.146.116.13]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id t28LCJLI011269; Sun, 8 Mar 2015 21:12:19 GMT In-Reply-To: <54FC9ED3.9000102@dancol.org> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.8.2 (807160) [OL 12.0.6691.5000 (x86)] X-Source-IP: aserv0021.oracle.com [141.146.126.233] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.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-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:100294 Archived-At: > > There is no reason to misleadingly add stuff to our emulation > > library that has no counterpart is Common Lisp - is not > > emulating anything there. It is even worse to use names that > > make it look as if these do correspond to Common Lisp things. > > > > It is perfectly fine for Emacs to add things that Common Lisp > > does not have/do. But it should add them elsewhere from the > > `cl*.el' files, and document them elsewhere than in manual CL. >=20 > Why? Some things (like letf) are just natural extensions of > facilities we got from Common Lisp. They may be natural extensions of Common Lisp for you, but that does not make them Common Lisp, and it does not make them natural extensions of Common Lisp for Common Lisp's designers. We are not designing or extending Common Lisp. That would be pretentious. We are designing Emacs Lisp. It is perfectly fine to extend or redesign Emacs Lisp any way we like. And we can take whatever we want from Common Lisp and do whatever we want with it. We need not try to emulate any given Common-Lisp function or macro. But the things we put in the Common-Lisp emulation package should be emulations of Common Lisp things, IMO - things designed by the Common-Lisp designers for Common Lisp. It is not appropriate to add non Common-Lisp things to our emulation of Common Lisp. That's all. > Keep in mind that they didn't start out under the cl namespace > either. They were just there along with everything else > when we created cl-lib. Yes, they should have been moved out of `cl*.el' before the creation of `cl-lib.el'. It's not too late to clean things up now and put them in non-`cl*.el' files where they belong (and of course remove the `cl-' prefix). They do not represent Common Lisp features in any way.=20 So call it `letf', not `cl-letf', and move it out of `cl*.el'. Similarly for anything else that is unrelated to Common Lisp. > I don't think you've explained the downside of extending CL > in the cl-namespace.=20 It's not about "extending CL in the cl-namespace". It's about a misguided, if indirect, attempt to extend Common Lisp, and giving the mistaken impression that these things are part of Common Lisp. It's not about the namespace. The same bug report applies to the old `letf' etc. in the old `cl-macs.el' (now called `cl--letf' in the new `cl-macs.el'). The name `letf' was fine for Emacs. And it still is. It just does not belong in `cl*.el'. > You've articulated an aesthetic point, but I don't see any > negative technical consequences. Technical consequences? It's about how this misleads users - user consequences. You've not articulated any criteria for adding a function or macro to `cl*.el'. Why not move `while' there as `cl-while'? Any number of Emacs functions and macros, could be argued to be "natural extensions of facilities we got from Common Lisp." That's too vague to mean anything helpful. Just because we got `let', `let*', and `setf' from Common Lisp, that's no reason that we should add `letf' or `cl-letf' - which have no counterpart in Common Lisp - to `cl*.el'. That's what this bug report is about: Just what should be part of our Common-Lisp emulation package. The criterion I would use is this: The only things that belong there are things that emulate things in Common Lisp. If Common Lisp has a function or macro `foo' then we can consider emulating it (under whatever name) and adding it to the `cl*.el' files. If not, it belongs elsewhere in Emacs. What, specifically, are your criteria for inclusion in `cl*.el'? I was quite specific about mine. How about you?