From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.devel Subject: Re: pcase ` meaning Date: Tue, 30 Oct 2018 00:57:39 +0100 Message-ID: <87zhuwwbkc.fsf@web.de> References: <20151216202605.GA3752@acm.fritz.box> <8760za8r4a.fsf@fencepost.gnu.org> <87h9iunkcg.fsf@web.de> <87h8hc4xw2.fsf_-_@web.de> <83tvlcsnee.fsf@gnu.org> <87pnw037ar.fsf@web.de> <83ftwvs7y9.fsf@gnu.org> <877ei7mkfh.fsf@web.de> <87a7mze7tl.fsf@web.de> <87zhuykjjh.fsf@web.de> <871s8aesdc.fsf@portable.galex-713.eu> <87tvl6dc3e.fsf_-_@portable.galex-713.eu> <87efc9isxj.fsf@web.de> <87tvl5653j.fsf@portable.galex-713.eu> <87zhuxhbeo.fsf@web.de> <87lg6hxda6.fsf@portable.galex-713.eu> <87va5kigkp.fsf@web.de> <87va5kqrxz.fsf@portable.galex-713.eu> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1540857364 9267 195.159.176.226 (29 Oct 2018 23:56:04 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 29 Oct 2018 23:56:04 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: Eli Zaretskii , Dmitry Gutov , Stefan Monnier , emacs-devel@gnu.org To: "Garreau\, Alexandre" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 30 00:55:59 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gHHO0-0002BG-E3 for ged-emacs-devel@m.gmane.org; Tue, 30 Oct 2018 00:55:56 +0100 Original-Received: from localhost ([::1]:49737 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gHHQ6-0004Pj-TE for ged-emacs-devel@m.gmane.org; Mon, 29 Oct 2018 19:58:06 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:55765) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gHHQ0-0004Ng-6h for emacs-devel@gnu.org; Mon, 29 Oct 2018 19:58:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gHHPv-0003M7-8M for emacs-devel@gnu.org; Mon, 29 Oct 2018 19:58:00 -0400 Original-Received: from mout.web.de ([217.72.192.78]:52387) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gHHPu-0003LQ-Uh; Mon, 29 Oct 2018 19:57:55 -0400 Original-Received: from drachen.dragon ([94.218.210.177]) by smtp.web.de (mrweb102 [213.165.67.124]) with ESMTPSA (Nemesis) id 0MNLS1-1gEmRI1qLx-006xoi; Tue, 30 Oct 2018 00:57:41 +0100 Original-Received: from drachen.dragon ([94.218.210.177]) by smtp.web.de (mrweb102 [213.165.67.124]) with ESMTPSA (Nemesis) id 0MNLS1-1gEmRI1qLx-006xoi; Tue, 30 Oct 2018 00:57:41 +0100 In-Reply-To: <87va5kqrxz.fsf@portable.galex-713.eu> (Alexandre Garreau's message of "Tue, 30 Oct 2018 00:00:24 +0100") X-Provags-ID: V03:K1:NWuhYBV2g+6h/yq6XOA4VvkhdIjzpIBFx71yPbE2V4a5pkk5SaC BpZcZ5URGJXNSPjoSCW1qobPD7wqMjh+I1TZEzoUyQEjZjMp0vOvIi/OpiGQNr1ksbcsFUg YtVgzUYFduariAwPV1tTl2LLaModctDMW3IUmoYcC9BO5rTiSHWysPtLD5Xz1LISL7CFO8R UeVGh1YIcv5VfI/l4jWlQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:OE/FFvuOU+Q=:eoHkWUT4boaVL/3NGHwweu AomShaxk9Biy7S5IjGLtBEsN14zzgtzkWfhYzHkZ5X3B31JTRd+8vNnFm6irOK+QF6ZS7QZuk sSxReK25iZEyrKYCOtL59x6Kr++NchJb1aYBTHrtb9XHCX9GiGNMAut4STFug6m4Ct1+eIzNB ZMkyaCdJQAgV7OwBCSfGQgeH/wZrvct/5ClZ5H5JFk+4KnYpO38FvpJG8ZhUp5+t3wJ/MI1/a mpvG88cIfqwsTLxOfEAm/oN5u4o46lhuTTB/9Hd5K9NT2wZcl/g3Zu9Zyq+s5XollGMT5rL/a C+pfx0T5KgMcwcsvapMseUGQy7A48ECuQDhFSX4n6qKw5sCGcPjV3RBipUeiDrB5see7DWuEJ CJzQPocr6Sk3kCN1HjcPd8yjQiQpzyRN6rxOk0bT1enJN6+40jlIuBlw249VPPe1BpMyjpwwV 1h9mgn7x9UQ0Um14SKWzBd1Mw25AsihmY4kJBTGzx6mVAX15raPZ+WIPTx0Efy7Fh/0lnXng/ 4UDSbYSylnHlLNJEsIkluqcIx4nwyzbJVaMvXN4v9Q4+W/fksT0GiPYcH/+QdAH1RthYLVMA4 C09sB86gsiuy8KJLUh2C4bauql9cv0bZYv16aBXl6Xpfa7BxD8hxdcDkflT2GzhzrRyFmXFlS IgPeBLiCe5XzRNENbku3KCHDF68zwDhs7zJHIIHMLuHipZ7nhJWRyBVVKzxfRIGVQwUhKdrkF XwjtwMZSCjo08aQbrfsKt32GfP94SyDsFhfdAGFT6e9xwrkwMInL5lmNPXpFHPk4A+sDbNYQ X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 217.72.192.78 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:230786 Archived-At: "Garreau, Alexandre" writes: > > You mean like (pred (equal val))? > > Oh indeed! Still that defeat the purpose of pattern matching by > requiring non-pattern matching stuff. What in that pattern is non-pattern matching stuff? > The fact pcase is not strictly treating ` as standard lisp=E2=80=99s read= er does > is only *adding* the the already existing confusion normal and standard > ` introduces in lisp. ` is a normal macro, it has nothing to do with the reader. Apart from the ` reader macro, which pcase doesn't touch at all. What it does is to give ` different semantics inside patterns. Like your `list' pattern gives new semantics to the symbol `list'. Oh my. > > For understanding the definition above note that ``' (synonymous for > > `backquote') is a (very normal) macro accepting one argument STRUCTURE, > > whereby we also have an abbreviating reader syntax > > `STRUCTURE =3D=3D (` STRUCTURE). We also have the reader syntax > > ,THING =3D=3D (, THING). > > Indeed you=E2=80=99re right, but that doesn=E2=80=99t automagically expla= in to me how > does exactely work the =E2=80=9C,=E2=80=9D macro, as it stays context dep= endant, not > trivial, and to me, =E2=80=9C,=E2=80=9D meant either =E2=80=9Ceval=E2=80= =9D or =E2=80=9Cundo =E2=80=98`=E2=80=99=E2=80=9D (the later is > nearer to the meaning used in pcase btw). (, is not a macro, btw) Well, in pcase patterns it "means" something different. As `and' means something different in `rx'. You very often say that you expected something different. I dunno what I first expected, I read the docs to learn pcase, and it took 5 minutes. I think we can agree that we disagree - I just don't share your opinion. The thing is designed in a way that it matches how some, but not all people, like to think about pattern matching. Michael.