From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Bozhidar Batsov Newsgroups: gmane.emacs.devel Subject: Re: if-let and when-let: parallel or sequential Date: Mon, 11 Aug 2014 15:01:26 +0300 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="53e8b096_25e45d32_118e6" X-Trace: ger.gmane.org 1407758518 22108 80.91.229.3 (11 Aug 2014 12:01:58 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 11 Aug 2014 12:01:58 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier , John Mastro Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Aug 11 14:01:51 2014 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 1XGoIL-0005cx-Fj for ged-emacs-devel@m.gmane.org; Mon, 11 Aug 2014 14:01:45 +0200 Original-Received: from localhost ([::1]:35306 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XGoIK-0003tx-Rd for ged-emacs-devel@m.gmane.org; Mon, 11 Aug 2014 08:01:44 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58503) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XGoIC-0003nd-Bo for emacs-devel@gnu.org; Mon, 11 Aug 2014 08:01:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XGoI6-0001Yv-PR for emacs-devel@gnu.org; Mon, 11 Aug 2014 08:01:36 -0400 Original-Received: from mail-wg0-x22f.google.com ([2a00:1450:400c:c00::22f]:39496) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XGoI6-0001Yo-Hi for emacs-devel@gnu.org; Mon, 11 Aug 2014 08:01:30 -0400 Original-Received: by mail-wg0-f47.google.com with SMTP id b13so8231133wgh.6 for ; Mon, 11 Aug 2014 05:01:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:message-id:in-reply-to:references:subject :mime-version:content-type; bh=pIKMbYp/TR2Jxk8AoZxgBC6XKeTYtHBl1TQn2F1HR2M=; b=KCReg0L7cO9TF9WBJcuwAF4a1RHrJfd+22pxrBXkfsrR+6uqNnK/xb8AgNXr7AN7FR B76eeXIj4zZQgkAOK8DVCyo92JV8vIk0ZrofAyMWVKtKST7tfiKb8Ttadiqi8OVwJubC BFp4vHcmxq6MX8V0neOO1HYRi8+oWBTobEsUSNhIl90/51KXo+2evVA1vUWXMByOkbDy DRRORN5lucCDMve8wPpHQbAkAZQDUerZcMLQumbA1hBsXHnlOEEd9JBXXFPWemxKkN/U /ZoQsZBxEHkVCh/m4yhE4j126LEkxZNRT78U1VNdsZpOnBC7s2DYhg9bgyjf5YULdzQ4 UO1w== X-Received: by 10.180.186.3 with SMTP id fg3mr18835914wic.78.1407758489106; Mon, 11 Aug 2014 05:01:29 -0700 (PDT) Original-Received: from Bozhidars-MacBook-Pro.local ([95.87.231.111]) by mx.google.com with ESMTPSA id fr4sm43084627wic.16.2014.08.11.05.01.27 for (version=TLSv1.2 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 11 Aug 2014 05:01:28 -0700 (PDT) In-Reply-To: X-Mailer: Airmail (247) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:400c:c00::22f 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:173569 Archived-At: --53e8b096_25e45d32_118e6 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On August 10, 2014 at 6:23:25 PM, Stefan Monnier (monnier=40iro.umontreal= .ca) wrote: > I noticed that the new =60if-let' and =60when-let' in trunk's subr-x cr= eate =20 > their bindings sequentially (like =60let*' rather than =60let'). Would = there =20 > be any interest in renaming these to =60if-let*' and =60when-let*', and= =20 > adding parallel-binding versions under the current names=3F =20 I have a hard time imagining a situation where the =22parallel=22 version= =20 would be useful. =20 Stefan =20 if-let and when-let don=E2=80=99t make much sense with more than one bind= ing form. Other lisps (like Clojure) would raise an exception if you try to bind more than a single form. ;; good (if-let ((x (something))) =C2=A0 =C2=A0 =E2=80=A6) ;; error (if-let ((x (something)) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(y (something-else))) =C2=A0 =C2=A0 =E2=80=A6) I=E2=80=99d suggest we do the same.=C2=A0 --53e8b096_25e45d32_118e6 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline