From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu Newsgroups: gmane.emacs.devel Subject: Re: What's missing in ELisp that makes people want to use cl-lib? Date: Sat, 11 Nov 2023 08:38:04 +0800 Message-ID: References: <871qd8sfdx.fsf@posteo.net> <838r7g8pys.fsf@gnu.org> <87bkcbrgnr.fsf@posteo.net> <25924.21015.19614.951576@orion.rgrjr.com> <87bkc4jpja.fsf@dataswamp.org> <12da6bcb-1818-7fbe-12af-8d4607724332@gutov.dev> <87il6bt4z0.fsf@yahoo.com> <87y1f6s3eb.fsf@yahoo.com> <878r75sqby.fsf@yahoo.com> 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="4851"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: Alan Mackenzie , Dmitry Gutov , =?utf-8?Q?Bj=C3=B6rn?= Bidar , emacs-devel To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Nov 11 01:39:46 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 1r1c2J-00014M-ND for ged-emacs-devel@m.gmane-mx.org; Sat, 11 Nov 2023 01:39:45 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r1c1S-0003y0-PE; Fri, 10 Nov 2023 19:38:50 -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 1r1c1P-0003xk-Vk for emacs-devel@gnu.org; Fri, 10 Nov 2023 19:38:48 -0500 Original-Received: from sonic314-21.consmr.mail.ne1.yahoo.com ([66.163.189.147]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r1c1L-0001R5-Dz for emacs-devel@gnu.org; Fri, 10 Nov 2023 19:38:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1699663120; bh=BFh/5w9GFit4eqYDKitXb0W8CD1Ex94gzwL5ssne/PE=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=Vle+DEbSdyxsyc7ZlrCWfeHMbexDbZpcDSHORahmBb0cGlan22SZTXHOw7ULAKSIXjgeQr8qapAcFIh2jaHBbOFRSZ/BGhakCR3TrmPx33Mad2zQns4q2a9A2Q5/t9MhvL9FlqPGOaP/SBLa9DP83mMWcM6sajVh7k/rY5lXddazdEZDHx11I6j+t8gUMogf/lwtd2jRGim9/aVwsbaDo4ChrotiPOhu+vgKNEFjjO8DxV83PtGjHgtwMqHUlL4Nseyhbb/giybsWzN55OMPc3S2MZPgLpE+dZU3ic01bIWpRv8s3VH/Ty7IS0TLoCqsdJmkOau8/ZuJkNEMuk16lg== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1699663120; bh=8ykjHZUXLLEDdcTKNNGT/LrMSfKtfhhw585XZKvJjtr=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=MYTt8O06Vw2gppYrUHhx3Da+sqLThYouqSEQUnOWJWOrGey+kCQWxL5T2ZqsM0z/hD76KQ6L+lnOtTO4NgxoeMywrw3zPr2n5v1Rgyi/4hbL22r/gqWAl2aYzAtcPYatBTDdmbng/w+Vu3lB7lMiYz3BrxXUqg6Uwee6p7Is5Qgru1A7DBmHogpvE1KC7MCG805EP5dnBtJovqJQGTj0LUnO7CR5ofbv1/neHp2tkbImjwKTQlJ97RYJuksYODEpR0QN/uEBJd2AhtzHKLQLuvldnn98t2aD3PV9LLmbCE6+p21jC5VrNjJlJvESV8bViLha5/OiU6UUA8Jxdp/3Ig== X-YMail-OSG: G9maioMVM1mORDQ94jcGhed2zudMI5r1rwjFdN3zup.GckBG6YSpEaspYzLX79V O6sGgboRxUFhp2n.lT7TS0cwCWLI8XxjqBmTV6vnOdeMHw_I44KQeIBrvLwUmzo.N9uLdUnppz33 8Kqcm1JJzvZGoaokaZ3eXWbV7M1MyHmj9lex2Usydwe_N4QgJ7w6WdnBSmMtfEb8KLHKV8WmYNxr 3f.snmHEbC4AKJ9AoSs8GHZ0SNqOuz1zWzAPsRQQ2utl_FisFaS.3EgVuFp2wM9Y2HlFdzibEgUy b.jOilY3TubHqOtpdb3srpdF.HqqOKbte0vQZV6uPEo4qnVtFGjLPqHdiniO3GaQSct6KKZO1TH_ 2xGyvF7xvryQZsYhGzRyCUZrjV02QdYsYL5VGdTmuRoFFWrf_1NebF38K5mIt_KgH47lBJkxB8oj XEtieFlcZFc0McdKJcTDPNvqZiol.dznT4Yfk_Z7_JBz9OFEO5xUWoMC9AzHbkAcfNEnOOUO2P2A Sgh3x7QRtkBMvbYteAXBceqHJ1vbNXIk5P5z9qAqH3zYfmgRhNtMR6SzAItGO6LOIdnO9ZT0Cbj. .Bbv91VdWwA7OfomYkMOwDkCOJRpToo1Awxv_BGfEulIKUJqNM.tvNN_qkXHKe8XxMxCwvGmEEhX 1vLh8RoznZZmhm_0F8PsRXzpDiuKRrQomKLvi.pvVVIDsbY0nt18C2eWuKHzpu0s6kPKzOI_nWVw L581reaRGdE9XouuNqimudGY2BB_R3fczCLB.xaClwoWvBCYUnoRMbwpePeK1XiT8Ay60XfJuoyY JYBUlyxHaqvb4rYdK5WHcgb_IqNlt8wDT6i72DdaVK X-Sonic-MF: X-Sonic-ID: 3032aa7d-8352-41a8-9be5-93b9baaba0ca Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic314.consmr.mail.ne1.yahoo.com with HTTP; Sat, 11 Nov 2023 00:38:40 +0000 Original-Received: by hermes--production-sg3-8696d769c6-wzlq9 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID d3901b95d9f609001b3a1d258022e57e; Sat, 11 Nov 2023 00:38:35 +0000 (UTC) In-Reply-To: (=?utf-8?Q?=22Jo=C3=A3o_T=C3=A1vora=22's?= message of "Fri, 10 Nov 2023 14:18:18 +0000") X-Mailer: WebService/1.1.21896 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=66.163.189.147; envelope-from=luangruo@yahoo.com; helo=sonic314-21.consmr.mail.ne1.yahoo.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.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, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=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:312509 Archived-At: Jo=C3=A3o T=C3=A1vora writes: > Wow, sounds like a fantastic healthy work environment. Do people > ever leave the company? Like, alive? Sarcasm aside, most people have no trouble assenting to these procedures. Not when they yield good code whose meaning remains clear for generations to come. Dismissing the intrinsic merit to readable code should be a no-starter hereabouts. > You didn't say "list manipulation function" . You wrote "No Emacs > built-in takes them". That's false. Take make-hash-table. Oh noes, > looks just like CL. Guess you're going to hand-roll hash tables > now, right? :-) Hash tables don't count, because they were designed to be compatible with the old CL hash table functions, just all that faster. > Take make-process or json-serialize. There are more. Keyword > arguments are in other Non-lisp languages too, as you probably > know, they're called named parameters sometimes. Heck C++ > has been pining for them for so long it's sad. I don't know why make-process was introduced, but it enjoys the excuse of accepting plenty of arguments. json-serialize does not: its two optional parameters don't even encounter the 7-argument limit for C DEFUNs. It is lamentable that the keyword argument illness has spread into C, but that doesn't palliate its deficiencies. > There is, because bad as it is, code gets jobs done that humans can't > do. I don't think anyone seriously believes what you claim here, in essence that it is OK to install dismal code while being well aware of its nature as such. > No, but you do, in actual source code! That was my point! You > have these fine abstractions to common operations like intersecting > sets, finding indices, and so much more, and you prefer to handroll > your expanded versions each time instead of going through a function > of an established library. These "fine abstractions" are also abstruse, while the set of primitives you never hesitate to impugn have carried Emacs through its entire existence.