From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Tomas Hlavaty Newsgroups: gmane.emacs.devel Subject: Re: [External] : Re: Shrinking the C core Date: Mon, 11 Sep 2023 22:37:27 +0200 Message-ID: <87pm2oe9a0.fsf@neko.mail-host-address-is-not-set> References: <87ledwx7sh.fsf@yahoo.com> <877cpfybhf.fsf@yahoo.com> <873503y66i.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="11600"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Drew Adams , arthur.miller@live.com, acm@muc.de, luangruo@yahoo.com, emacs-devel@gnu.org To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= , rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Sep 11 22:38:57 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 1qfngP-0002r9-3V for ged-emacs-devel@m.gmane-mx.org; Mon, 11 Sep 2023 22:38:57 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qfnfO-0001Aj-76; Mon, 11 Sep 2023 16:37:54 -0400 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 1qfnfL-000151-7o for emacs-devel@gnu.org; Mon, 11 Sep 2023 16:37:51 -0400 Original-Received: from logand.com ([37.48.87.44]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qfnfF-00070a-IF; Mon, 11 Sep 2023 16:37:47 -0400 Original-Received: by logand.com (Postfix, from userid 1001) id 8437E19E73B; Mon, 11 Sep 2023 22:37:29 +0200 (CEST) X-Mailer: emacs 28.2 (via feedmail 11-beta-1 I) In-Reply-To: Received-SPF: pass client-ip=37.48.87.44; envelope-from=tom@logand.com; helo=logand.com 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 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:310479 Archived-At: On Mon 11 Sep 2023 at 16:10, Jo=C3=A3o T=C3=A1vora w= rote: > This makes them very easy to remember and makes using e.g. CL's SORT > much more practical than Emacs Lisp 'sort'. not really, it seems that CL:SORT is a bad example the CL spec defines sort like this: sort sequence predicate &key key =3D> sorted-sequence stable-sort sequence predicate &key key =3D> sorted-sequence (btw why two functions and not extra stablep keyword argument?) it could have been defined as: sort sequence predicate &optional key =3D> sorted-sequence stable-sort sequence predicate &optional key =3D> sorted-sequence and the same could be done in elisp which would be backwards compatible > Let's look at a traditional Elisp macro define-minor-mode. the usual CL argument list does not seem to be able to express arguments of such shape it looks like whoever extended the original argument list did it "weirdly" using custom ad-hoc single-use argument list parser. > are maintenance hazards, the macro now accepts keyword arguments in CL, the arguments would normally be in a list before body, something like (define-minor-mode MODE ([KEYWORD VAL ... ]) [DOC] &rest BODY)