From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: A protest against pcase, pcase-let, pcase-let* Date: Tue, 31 Mar 2015 18:00:29 +0000 Message-ID: <20150331180029.GF2871@acm.fritz.box> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1427824876 17651 80.91.229.3 (31 Mar 2015 18:01:16 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 31 Mar 2015 18:01:16 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Mar 31 20:01:04 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Yd0TB-0007WH-35 for ged-emacs-devel@m.gmane.org; Tue, 31 Mar 2015 20:00:57 +0200 Original-Received: from localhost ([::1]:39940 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yd0TA-0006mP-5e for ged-emacs-devel@m.gmane.org; Tue, 31 Mar 2015 14:00:56 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46226) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yd0T2-0006m7-D3 for emacs-devel@gnu.org; Tue, 31 Mar 2015 14:00:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yd0Sw-0003ik-BV for emacs-devel@gnu.org; Tue, 31 Mar 2015 14:00:48 -0400 Original-Received: from colin.muc.de ([193.149.48.1]:40212 helo=mail.muc.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yd0Sw-0003iW-1G for emacs-devel@gnu.org; Tue, 31 Mar 2015 14:00:42 -0400 Original-Received: (qmail 98648 invoked by uid 3782); 31 Mar 2015 18:00:40 -0000 Original-Received: from acm.muc.de (pD9519B17.dip0.t-ipconnect.de [217.81.155.23]) by colin.muc.de (tmda-ofmipd) with ESMTP; Tue, 31 Mar 2015 20:00:39 +0200 Original-Received: (qmail 6013 invoked by uid 1000); 31 Mar 2015 18:00:29 -0000 Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) X-Delivery-Agent: TMDA/1.1.12 (Macallan) X-Primary-Address: acm@muc.de X-detected-operating-system: by eggs.gnu.org: FreeBSD 9.x X-Received-From: 193.149.48.1 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:184662 Archived-At: Hello, Emacs. Can we please have a moratorium on the use of pcase, etc.? Their use is gradually proliferating through Emacs, yet they are not documented. OK, maybe pcase itself has a page in the elisp manual, but this page is very difficult to understand, certainly for me. I have attempted quite a lot of times to make sense of it, and failed. There are two possibilities here: (i) the page is difficult because pcase is itself difficult. In this case we should stop using pcase and systematically remove it from Emacs source. (ii) The page is difficult because it is not well written. In this case it should be improved. Personally, I think (ii) is more likely to be true than (i). pcase-let and pcase-let* are totally absent from the elisp manual. Their doc strings say nothing more than "Like `let' but where you can use `pcase' patterns for bindings.", without giving any clue as to what "`pcase' patterns" are, or what the syntax and semantics of their "use" of them for bindings look like. Recently, jit-lock.el was changed to include a pcase-let and a pcase-let*. The pertinent code is, to me, completely obscure. As these forms encroach on an ever increasing portion of Emacs, the part of Emacs in which I can usefully hack diminishes correspondingly. I suspect I am not alone here. As an aside, I suspect that edebug will not be useful in (possibly large) uses of these forms, given that they are implemented as macros rather than special forms. Could we have a moratorium on further use of these three forms until the above issues have been resolved? -- Alan Mackenzie (Nuremberg, Germany).