From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: What's missing in ELisp that makes people want to use cl-lib? Date: Wed, 8 Nov 2023 17:18:28 +0000 Message-ID: References: <46ab3c7d-d820-4bb4-8ec4-97c614d7c8a0@alphapapa.net> <871qd8sfdx.fsf@posteo.net> <838r7g8pys.fsf@gnu.org> <87bkcbrgnr.fsf@posteo.net> <25924.21015.19614.951576@orion.rgrjr.com> <87bkc4jpja.fsf@dataswamp.org> <87r0l070jt.fsf@> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19865"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: =?iso-8859-1?Q?Bj=F6rn?= Bidar Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Nov 08 18:19:51 2023 Return-path: Envelope-to: ged-emacs-devel@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 1r0mDW-0004vM-HX for ged-emacs-devel@m.gmane-mx.org; Wed, 08 Nov 2023 18:19:50 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r0mCW-0007d8-Qy; Wed, 08 Nov 2023 12:18:49 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r0mCU-0007cl-Tl for emacs-devel@gnu.org; Wed, 08 Nov 2023 12:18:47 -0500 Original-Received: from mail.muc.de ([193.149.48.3]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r0mCQ-0005JK-41 for emacs-devel@gnu.org; Wed, 08 Nov 2023 12:18:45 -0500 Original-Received: (qmail 64518 invoked by uid 3782); 8 Nov 2023 18:18:29 +0100 Original-Received: from acm.muc.de (p4fe1584b.dip0.t-ipconnect.de [79.225.88.75]) (using STARTTLS) by colin.muc.de (tmda-ofmipd) with ESMTP; Wed, 08 Nov 2023 18:18:29 +0100 Original-Received: (qmail 22338 invoked by uid 1000); 8 Nov 2023 17:18:28 -0000 Content-Disposition: inline In-Reply-To: <87r0l070jt.fsf@> X-Submission-Agent: TMDA/1.3.x (Ph3nix) X-Primary-Address: acm@muc.de Received-SPF: pass client-ip=193.149.48.3; envelope-from=acm@muc.de; helo=mail.muc.de X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:312352 Archived-At: Hello, Björn. On Wed, Nov 08, 2023 at 17:00:06 +0200, Björn Bidar wrote: > Emanuel Berg writes: > > But how would this help the maintainers? Instead of > > familiarizing themselves with `cl-incf', and all other > > functions provided by cl-lib that are in use and people will > > continue to use, they will have to learn the new functions > > replacing them? So what difference will that make? > It does sound more and more the fight for some kind of language purity > to not use cl-lib. Removed from reality like Don Quixote. That is verging on the offensively patronising, and I don't think it is appropriate language for this mailing list. Just take one look at this "reality" you're so supportive of: the widespread use of cl-lib, not just in people's own projects, but throughout the core of Emacs, has multiplied the size of Lisp language part of Emacs by a factor of around 3. This is a gross increase in complexity for maintainers that is not justified by the slight increase in facility that cl-lib (along with things like seq.el and oclosures) gives. Throughout this long discussion, this indiscriminate use of cl-lib has been supported only by occasional contributers. Those who actually maintain other people's code, apart from (I think) Eli, Richard and myself, have been conspicuously silent. None of us three have favoured such use of cl-lib. Occasional contributors may be fascinated by cl-lib, and learn enough of it to use random bits of it in their code. The trouble is, each such contributor uses a different piece of cl-lib, with the result that those who end up maintaining it need to know a far greater part of it just to cope. This factor of 3 is, I believe, a significant barrier to new programmers coming into Emacs; Elisp is just that much more difficult than it was in the past. And it isn't just for newcomers that it is more difficult. I spend a significant amount of debugging time having to look up doc strings and manual pages for obscure cl-lib (etc.) functions. This is lost time, representing a diminution of my capacity to maintain Emacs. I suspect it is similar for other maintainers. That is the current reality. -- Alan Mackenzie (Nuremberg, Germany).