From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: seq.el and the complexity of Emacs Lisp. Date: Fri, 10 Nov 2023 14:01:40 +0200 Message-ID: <83pm0hyfyz.fsf@gnu.org> References: <2879d846-b711-ada0-cdc4-9adcb4e56040@gmail.com> <656f8d5f-2850-062c-1b38-3b50367c64d5@gmail.com> 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="38999"; mail-complaints-to="usenet@ciao.gmane.io" Cc: jporterbugs@gmail.com, joaotavora@gmail.com, gerd.moellmann@gmail.com, rms@gnu.org, paaguti@gmail.com, emacs-devel@gnu.org To: Alan Mackenzie Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Nov 10 13:02:45 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 1r1QDk-0009uo-9j for ged-emacs-devel@m.gmane-mx.org; Fri, 10 Nov 2023 13:02:44 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r1QD6-0006se-0a; Fri, 10 Nov 2023 07:02:04 -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 1r1QCy-0006rh-4Q for emacs-devel@gnu.org; Fri, 10 Nov 2023 07:02:02 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r1QCw-0005Iz-OC; Fri, 10 Nov 2023 07:01:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=8RefVGt1rcjo962PwkJHgnkA24upp0unx4agBzd5Aak=; b=YGEqdhzMsLwgjHTeHXxL LWF8AfXnTWyQ0d6+FUex5VgZcrkXzrW0HVSXQgSx2d0NEmK0P4h6PRGTxvxuB4lRNWStYwjfPtID9 gS7yGgy4Ouyoq+pYNzWeO4bO5JLsqo8fGHKQNnvCXQpacAy8KSlAU+PysVGH68xkojxvuXBafB18M JJgNFOpWKl2YZCje92GQqHOAfCQ9pLEAfTqJNRf1CJpDNY/78DO9gSXqNwranGuIHbIOBaqsK6PXQ ycj1nX9ldN5vLrLXyuoBqHgLuQHkkeqLNZzjc/k5H3SnBzcuUnK5C+H6IxP9nTaiqk7JGlBS+SpWt 1Q9Txx6yYxGdDw==; In-Reply-To: (message from Alan Mackenzie on Fri, 10 Nov 2023 10:03:48 +0000) 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:312477 Archived-At: > Date: Fri, 10 Nov 2023 10:03:48 +0000 > Cc: Joăo Távora , > Gerd Möllmann , > Richard Stallman , paaguti@gmail.com, emacs-devel@gnu.org > From: Alan Mackenzie > > > In fact, I was considering adding support to seq.el for generators, > > which we could consider a kind of lazy sequence. I'm not entirely sure I > > *need* it yet, but it could make a few things in Eshell easier. > > Please don't. This would be yet one more unnecessary complicated > abstraction for which future maintainers would curse you for introducing. > I don't know what a "generator" is, exactly, but it would likely involve > a plethora of backticks, funcalls, generic functions, and the like, all > things which make debugging difficult, if not very difficult. > > The Subject: line of this thread mentions complexity. This is something > we should be trying to reduce in Emacs, not increase. IMSNHO, we should see the code, or at least its prototype, before passing judgment on whether we like it, let alone whether we will "curse" the author. It sounds strange to me to read that you don't know what a "generator" is, but you already know that you don't like it because it will involve plethora of stuff you don't want to see in Emacs. (Btw, if you dislike backticks so much, why is CC Mode so full of them?) To Jim: if you think about extending seq.el, please also think whether the extensions must be preloaded, or can be on a separate file, say, seq-x.el, where the extensions will be autoloaded when needed.