From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Replace trivial pcase occurrences in the Emacs sources Date: Thu, 01 Nov 2018 06:14:30 +0200 Message-ID: <83y3adh1sp.fsf@gnu.org> References: <83tvlcsnee.fsf@gnu.org> <20181029134722.GC4195@ACM> <87lg6gifnb.fsf@web.de> <87muqwxs7m.fsf@ericabrahamsen.net> <83h8h3jlyd.fsf@gnu.org> <8b897e43-679b-d38c-e185-0efe19c09342@yandex.ru> <83y3aei08p.fsf@gnu.org> <83o9bahz6i.fsf@gnu.org> <877ehyx7xg.fsf@web.de> <83d0rpj4y0.fsf@gnu.org> <871s85yjx9.fsf@web.de> <83a7mtj309.fsf@gnu.org> <87lg6dx31e.fsf@web.de> NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1541045578 7468 195.159.176.226 (1 Nov 2018 04:12:58 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 1 Nov 2018 04:12:58 +0000 (UTC) Cc: emacs-devel@gnu.org, monnier@IRO.UMontreal.CA, dgutov@yandex.ru To: Michael Heerdegen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Nov 01 05:12:53 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 1gI4Ll-0001nZ-Ke for ged-emacs-devel@m.gmane.org; Thu, 01 Nov 2018 05:12:53 +0100 Original-Received: from localhost ([::1]:34911 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gI4Nr-0004Xg-Sf for ged-emacs-devel@m.gmane.org; Thu, 01 Nov 2018 00:15:03 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43227) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gI4Nj-0004Xb-Ik for emacs-devel@gnu.org; Thu, 01 Nov 2018 00:14:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gI4Nb-0003ul-U6 for emacs-devel@gnu.org; Thu, 01 Nov 2018 00:14:53 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:50116) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gI4Na-0003uX-14; Thu, 01 Nov 2018 00:14:47 -0400 Original-Received: from [176.228.60.248] (port=3281 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1gI4NZ-0007rq-5z; Thu, 01 Nov 2018 00:14:45 -0400 In-reply-to: <87lg6dx31e.fsf@web.de> (message from Michael Heerdegen on Wed, 31 Oct 2018 21:41:01 +0100) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e 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:230937 Archived-At: > From: Michael Heerdegen > Cc: dgutov@yandex.ru, monnier@IRO.UMontreal.CA, emacs-devel@gnu.org > Date: Wed, 31 Oct 2018 21:41:01 +0100 > > (defun second-elt-is-positive-p (l) > (pcase l > (`(,_ ,(pred (< 0)) . ,_) t))) > > (second-elt-is-positive-p (list 1 2 3)) > ==> t > > (second-elt-is-positive-p (list 1 -2 3)) > ==> nil > > Is the pattern `(,_ ,(pred (< 0)) . ,_) destructuring or does it > additionally have to bind at least one variable to be called like that? I think we have a destructuring here, since elements of a list are extracted and assigned to the elements of the pattern. What we do with the extracted elements (ignore 2 of them and apply a predicate to the 3rd) is not really important for the purposes of this discussion.