From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?utf-8?Q?Gerd_M=C3=B6llmann?= Newsgroups: gmane.emacs.devel Subject: Re: What's missing in ELisp that makes people want to use cl-lib? Date: Mon, 13 Nov 2023 07:28:54 +0100 Message-ID: References: <87il6bt4z0.fsf@yahoo.com> <8734xetjkk.fsf@yahoo.com> <87cywhsrcf.fsf@yahoo.com> <87cywgx1z0.fsf@web.de> <83wmuowwp3.fsf@gnu.org> <8334xcwank.fsf@gnu.org> <83ttpsuiv4.fsf@gnu.org> <83fs1buzqs.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="6855"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: joaotavora@gmail.com, michael_heerdegen@web.de, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Nov 13 07:30:05 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 1r2QST-0001a4-0s for ged-emacs-devel@m.gmane-mx.org; Mon, 13 Nov 2023 07:30:05 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r2QRT-0003I2-O4; Mon, 13 Nov 2023 01:29:03 -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 1r2QRQ-0003Hq-Mh for emacs-devel@gnu.org; Mon, 13 Nov 2023 01:29:00 -0500 Original-Received: from mail-ej1-x633.google.com ([2a00:1450:4864:20::633]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r2QRO-00004w-6L; Mon, 13 Nov 2023 01:28:59 -0500 Original-Received: by mail-ej1-x633.google.com with SMTP id a640c23a62f3a-9c773ac9b15so574137066b.2; Sun, 12 Nov 2023 22:28:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1699856936; x=1700461736; darn=gnu.org; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tfMeXJkDY7aSa2QPTZdM6Hu7xtNdHAtZ6lEmJiVqefk=; b=Pgf4KefiLeU9cfALuMhSV3blvMFOs4O+oxuW15r7S7YHq+6iqD0/t4Ocn3sxVtmbgH 2NiyaebijoiSuwT2qSD7zKboc6F64KSB/ISsVmDy1eDY9WjzM+vBlsmR99uiBQoer0Qd gyf5DFFPHdZUAjAt8YBNwkB+jrcuU1I2/dLXfpBN6GS05b+c6rsWmu65HNMGawuOqcMJ K4IJqJTZ4YwURfUdFSDBluEUi3mGvMVoQYK98BBP4wAwHy+n3NoneTR+jIzpl7RXoS8I yJfAc8CAbbI3zXi1M/3BZ3dBxRDYatODGkowqSXBxR7NvfpY8azXU5+/262UPMNPSBqF saVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699856936; x=1700461736; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=tfMeXJkDY7aSa2QPTZdM6Hu7xtNdHAtZ6lEmJiVqefk=; b=PqBhwG4kdDDpYvhy1IeSoRbWFmqWZVXoHDGQq/SXeqVwcQLgBNzVcfd5x//fFI6gJD UpRE/XkWSF3AA7GnTNJNuOc8KcPeiytj4GiKVp7qKcKRulWyn7JI5ucW0jK2qQKn9AaO ZG1uIublj+CKmzoZxePLz44ilt5gaV6fuxSpyRLWf8IpVucpWJeFTfBjRmLmqKxI/Jir jmAmO4uf64m1ipXxjhQPdgO3Bs3AlPeGFPjE/XB3aPu7iv1iE7ZJRRyZ0CpWzkuRhUsJ +kKhNWxYwuzmRp7xv2Tkq8fChja7QyHPrUx42dDKVdQdpGtcAAPDIIVCxntHbO3JEBt8 mXbQ== X-Gm-Message-State: AOJu0YxlyvsEhHNZqFvwLn+pJ9us7VjTh3rqHAnpfNHfM4sUqjf1tCsU s5K9YbZ/l3/kk1BayHOH4HSihcmVHEk= X-Google-Smtp-Source: AGHT+IEK+ju84k2+TIfneXGbz/r/am2JuFng4RWb6nQA7VzDDHR4cSOQFAkrzBBEIgLUeXT7Z98Vsw== X-Received: by 2002:a17:906:f293:b0:9e2:af56:c380 with SMTP id gu19-20020a170906f29300b009e2af56c380mr4242195ejb.6.1699856935673; Sun, 12 Nov 2023 22:28:55 -0800 (PST) Original-Received: from Pro.fritz.box (pd9e367f4.dip0.t-ipconnect.de. [217.227.103.244]) by smtp.gmail.com with ESMTPSA id v27-20020a1709060b5b00b009e67c32050dsm3460915ejg.44.2023.11.12.22.28.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Nov 2023 22:28:55 -0800 (PST) In-Reply-To: <83fs1buzqs.fsf@gnu.org> (Eli Zaretskii's message of "Sun, 12 Nov 2023 10:44:59 +0200") Received-SPF: pass client-ip=2a00:1450:4864:20::633; envelope-from=gerd.moellmann@gmail.com; helo=mail-ej1-x633.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no 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:312693 Archived-At: Eli Zaretskii writes: >> From: Gerd M=C3=B6llmann >> Cc: joaotavora@gmail.com, michael_heerdegen@web.de, emacs-devel@gnu.org >> Date: Sun, 12 Nov 2023 07:59:13 +0100 >> >> Eli Zaretskii writes: >> >> >> Seq is 10 years in Emacs >> > >> > It is preloaded only since a little more than a year ago. >> >> You're saying that the real promotion of seq is only a year old? > > Yes. > >> And that things will "improve" once the promotion picks up speed? > > No. I'm saying that we are still very far from a point where we have > enough data to decide whether that year-old decision was wrong or not. > Whether we see an improvement or not, time will say. I think here's once difference in our thinking: One of my main critiques does not depend on time. Please see below >> >> its polymorphism is unused in the tree. >> > >> > Searching for seq-* in the tree brings more than 590 hits in more than >> > 170 Lisp files. >> >> And? The polymorphism isn't used. > > Then I guess I don't understand what you mean by "polymorphism". C'mon :-) This sub-thread started, when I told why I'm not using seq and will not. https://lists.gnu.org/archive/html/emacs-devel/2023-11/msg00122.html I said this (this is all I wrote): The reason I will not use seq.el or map.el in the forseeable future is quite simple: I haven't ever needed an abstraction over sequence types using generic functions, and I never have CPU cycles to give away for free. Neither you nor Richard ever addressed the question why this polymorphism is needed or even a Good Thing. Richard even read seq.el and even had his first exposure to pcase etc., but more than pondering if one could make generic function calls faster was not the result. >> >> Joao showed that it's slow. >> > >> > No, he didn't. >> >> Aha. > > No, really. What he showed is that seq.el is in most (though not all) > cases _slower_ than the corresponding cl-lib functions. Sometimes > much slower, sometimes slightly slower (and in at least one case > faster). But that doesn't mean seq.el is "slow", enough to make its > use nonsensical. Because why should we care that some call takes 2 > usec instead of just 0.5 usec? both are negligible. The difference > will only become visible if someone needs to call these in a very > tight loop with a very large number of iterations. > > IOW, "slower" is not the same as "slow". If we cared about "slow", we > would have implemented everything in C. We didn't because we have > "other considerations", which are important to us and outweigh "slow" > when "slow" is "fast enough". Exactly like in the case of seq.el vs > cl-lib. Those "other considerations" in the latter case were > abundantly described and explained up-thread, so I'm sure you know > what they are, even though you disagree. I actually got your intention when I wrote aha. > >> I've lost hope to hear something concrete a while ago. > > Same here, sadly. Aha. I doubt that your, and Richard's, intention is to really communicate over these issues. It has already been decided by Richard and you, right? The rest is rabulistic. Slow is fast enough, time will show, maintainers think this or that, it's preloaded, it's not concrete, what is polymorphism, and so on, and so on. Conspiracy theory is still missing.