From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: Rationalising c[ad]\{2,5\}r. Date: Wed, 11 Mar 2015 18:51:45 -0700 (PDT) Message-ID: <50545da4-91f3-41fc-b408-07668ffc2f19@default> References: <20150311214324.GA2952@acm.fritz.box> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1426125149 16715 80.91.229.3 (12 Mar 2015 01:52:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 12 Mar 2015 01:52:29 +0000 (UTC) Cc: Alan Mackenzie , emacs-devel To: bruce.connor.am@gmail.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Mar 12 02:52:18 2015 Return-path: Envelope-to: ged-emacs-devel@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 1YVsIL-0004Ip-KH for ged-emacs-devel@m.gmane.org; Thu, 12 Mar 2015 02:52:17 +0100 Original-Received: from localhost ([::1]:57696 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVsIK-0004Rs-UT for ged-emacs-devel@m.gmane.org; Wed, 11 Mar 2015 21:52:16 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59901) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVsI7-0004Rk-AO for emacs-devel@gnu.org; Wed, 11 Mar 2015 21:52:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YVsHz-0007VK-OB for emacs-devel@gnu.org; Wed, 11 Mar 2015 21:52:03 -0400 Original-Received: from aserp1040.oracle.com ([141.146.126.69]:31162) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVsHz-0007To-Hn for emacs-devel@gnu.org; Wed, 11 Mar 2015 21:51:55 -0400 Original-Received: from ucsinet21.oracle.com (ucsinet21.oracle.com [156.151.31.93]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id t2C1pl4D031319 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 12 Mar 2015 01:51:48 GMT Original-Received: from userz7022.oracle.com (userz7022.oracle.com [156.151.31.86]) by ucsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id t2C1pkaw012041 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 12 Mar 2015 01:51:47 GMT Original-Received: from abhmp0015.oracle.com (abhmp0015.oracle.com [141.146.116.21]) by userz7022.oracle.com (8.14.5+Sun/8.14.4) with ESMTP id t2C1pjMT015777; Thu, 12 Mar 2015 01:51:46 GMT In-Reply-To: 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: ucsinet21.oracle.com [156.151.31.93] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 141.146.126.69 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:183798 Archived-At: > >> 1. caar, cadr, cdar, and cddr are defined in subr.el; > >> 2. c[ad]\{3,4\}r are actually called cl-caaar, etc; > > > > Gag. Why is that? >=20 > My guess is that these were initially defined in `cl.el' (which, > if that's the case, I agree was a mistake), It doesn't much matter where they were defined. They are basic Lisp. Who cares where `setq' is defined, in terms of modularity or namespaces? > and afterwards all cl functions were renamed to `cl-' prefixes by > cl-lib (in the process of abolishing `cl.el'). That was an even bigger mistake - doing that systematically, I mean. `cl-car', `cl-cdr',... Sheesh - what silliness. Also: bug #20056: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D20056 `car' is Lisp. It is not special to Common Lisp. `letf' is Emacs Lisp. It is not Common Lisp. Neither should get the `cl-' prefix. Neither is emulating Common Lisp, and neither is confusable with something else already existing in Emacs Lisp. > >> and there will be compatibility aliases for cl-caaadr etc.. > > > > Why? Why is that needed? >=20 > To not make it harder for developers to support Emacs 24.X Well, if you mean keeping `caaadr', then yes. It's `cl-caaadr' that has no raison d'etre. Keep `caaadr'; toss `cl-caaadr'. No need for any aliasing then to make things easier for "developers to support Emacs 24.X". Putting it like you did is trying to make a virtue out of necessity (or a purse out of a sow's ear, if you prefer). Given the existence of `cl-caaadr', yes, of course we would then need to alias `caaadr' to it. Get rid of `cl-caaadr', and no, no aliasing is needed. > > Has this slick cl-* paint job perhaps gotten out of hand? >=20 > Well, it's not exactly getting worse. It's the same it's always > been, isn't it? See above. Yes, this kind of thing is worse, IMHO. And no, prefix `cl-' has not always been applied to such things.