From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.devel Subject: Re: how to speed up Lisp devel time Date: Sat, 10 Aug 2024 00:17:08 +0200 Message-ID: <8734nd2vff.fsf@dataswamp.org> References: <87y156413v.fsf@dataswamp.org> <86sevekvjy.fsf@gnu.org> <87v80a402y.fsf@dataswamp.org> <86ikwakmdg.fsf@gnu.org> <87frre3pxa.fsf@dataswamp.org> <86ed6xlx9r.fsf@gnu.org> <87a5hl4x9b.fsf@dataswamp.org> <87ttft3byp.fsf@dataswamp.org> <8634ndlgox.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23211"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: emacs-devel@gnu.org Cancel-Lock: sha1:w972sWH4GoGWSRxkMXmof+rBSDg= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Aug 10 07:17:46 2024 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 1sceU6-0005u6-1V for ged-emacs-devel@m.gmane-mx.org; Sat, 10 Aug 2024 07:17:46 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sceTw-0005VR-RC; Sat, 10 Aug 2024 01:17:36 -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 1scXvN-0004VB-88 for emacs-devel@gnu.org; Fri, 09 Aug 2024 18:17:29 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1scXvL-0005Pb-Ec for emacs-devel@gnu.org; Fri, 09 Aug 2024 18:17:28 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1scXvJ-0000xp-Hg for emacs-devel@gnu.org; Sat, 10 Aug 2024 00:17:25 +0200 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: emacs-devel@gnu.org Mail-Copies-To: never Received-SPF: pass client-ip=116.202.254.214; envelope-from=ged-emacs-devel@m.gmane-mx.org; helo=ciao.gmane.io 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, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 10 Aug 2024 01:17:34 -0400 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:322596 Archived-At: Christopher Dimech wrote: > This complexity is not inherently negative, and there are > compelling reasons to embrace it in certain situations. > Commands with multiple optional arguments offer > greater flexibility. Eh, three arguments with default values, "this complexity"? Actually, because of the Elisp limitation that optional arguments must be last, in sequence, there are many functions with three - or more - optional arguments. If this is news to you: - there are 2058 hits for '&optional .* .* .*' in the Emacs source, - 194 seems to be interactive. Yeah, these commands are imperfect by definition but it is clear there are many, many such cases of Elisp, not the least in the Emacs core source. ~/src/emacs $ grep '&optional .* .* .*' **/*.el | wc -l 2058 ~/serc/emacs $ grep -A 3 '&optional .* .*' **/*.el | grep '(interactive' | wc -l 194 -- underground experts united https://dataswamp.org/~incal