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: Instead of pcase Date: Fri, 01 Dec 2023 08:31:39 +0200 Message-ID: <838r6ebfhw.fsf@gnu.org> References: <87fs169mjj.fsf@posteo.net> <093f11a1-57c2-5e56-d39b-26fef1c67cbb@gutov.dev> <25942.25061.217864.329049@retriever.mtv.corp.google.com> <87zfzdcz6z.fsf@posteo.net> <763f067b-4ca9-1eba-9f3c-424c38589e9c@gutov.dev> <83fs0navpj.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23664"; mail-complaints-to="usenet@ciao.gmane.io" Cc: owinebar@gmail.com, rms@gnu.org, dmitry@gutov.dev, philipk@posteo.net, emacs-devel@gnu.org To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Dec 01 07:32:34 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 1r8x4j-0005wn-Vr for ged-emacs-devel@m.gmane-mx.org; Fri, 01 Dec 2023 07:32:34 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r8x48-0003cA-Bn; Fri, 01 Dec 2023 01:31:56 -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 1r8x47-0003c2-Kp for emacs-devel@gnu.org; Fri, 01 Dec 2023 01:31:55 -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 1r8x46-0008OI-CD; Fri, 01 Dec 2023 01:31:54 -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=/nu1SOtunzepWl5A+EDtd3b9mvftphZnxL9O+Ys3AYI=; b=Q4GcjcvB66zIkwedaddq X6ozMYafZpvKVWIuTPEAxsx5osbKA0QrPgfCisGFZyrq/QzG/OPr9yNnuKGQZ+AwpGI2wSKE/rHNn O+CWgtxsVCDvAdYaMBSO1NXEzUNrccjNFgLOTlE0048TH+5j0hATpczzBDamqwAYQQZwCIyqa+wUb AMISHIK8t+QThuUUj+ZwkviF0CX/m8S9pd1yMJJanicWOnMMaBdCYoXshsZzHyoE2ClRGJCVDv92+ 8QzDf/2+U6QDHI8I8QC2LgeChb7vw/D++ClXMW1IKgh/GWxflfxpu2El1bpnoyEnfORLHijQviIgO 5MUlnaBx5RhjxA==; In-Reply-To: (message from =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= on Thu, 30 Nov 2023 20:47:22 +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:313418 Archived-At: > From: João Távora > Date: Thu, 30 Nov 2023 20:47:22 +0000 > Cc: Lynn Winebarger , rms@gnu.org, dmitry@gutov.dev, philipk@posteo.net, > emacs-devel@gnu.org > > On Thu, Nov 30, 2023 at 7:27 PM Eli Zaretskii wrote: > > So I think you probably meant > > `(,hookfun . (,start ,end)) > > And this is valid in both pcase and normal backquoted list > expressions. Furthermore, here the period is _not_ redundant. The validity is not the point I wanted to make. The point I wanted to make is that the accepted syntax includes unusual uses of the period and other punctuation, some of which have special meaning. And that makes the code harder to read and understand. Incidentally, the actual code from which this were taken is (`(,hookfun . (,start ,end ,collection . ,plist)) Which has _two_ periods, not one, which are AFAIU redundant, as far as the Lisp reader is concerned. > IMO what's relatively contrived in pcase-- but very well contrived > I should add -- is the use of the backtick and comma, whose > usual job is output and list construction, to do the reverse, > to express input and list destructure. Again, the point is not that the construct cannot be explained away or interpreted correctly given enough time and consulting the docs. The point is the _effort_ required to understand this without being an expert on using pcase. That is the point Richard was making, and that is the _only_ point I wanted Lynn to understand.