From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Matt Wette Newsgroups: gmane.lisp.guile.user Subject: Re: Anaphoric macros like when-let Date: Sat, 26 Aug 2017 12:50:46 -0700 Message-ID: <12D2B2C2-41A5-4F66-98DB-7F7A5AF0C819@gmail.com> References: <1a0f67f3.AEAAO93SX5gAAAAAAAAAAAPWCvIAAAACwQwAAAAAAAW9WABZodBb@mailjet.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1503777086 5629 195.159.176.226 (26 Aug 2017 19:51:26 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 26 Aug 2017 19:51:26 +0000 (UTC) Cc: Guile User To: Arun Isaac Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sat Aug 26 21:51:19 2017 Return-path: Envelope-to: guile-user@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 1dlh6z-0000um-15 for guile-user@m.gmane.org; Sat, 26 Aug 2017 21:51:17 +0200 Original-Received: from localhost ([::1]:58504 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dlh75-0005BK-0X for guile-user@m.gmane.org; Sat, 26 Aug 2017 15:51:23 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50895) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dlh6b-0005Az-Rx for guile-user@gnu.org; Sat, 26 Aug 2017 15:50:54 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dlh6Y-00051q-PW for guile-user@gnu.org; Sat, 26 Aug 2017 15:50:53 -0400 Original-Received: from mail-pg0-x22f.google.com ([2607:f8b0:400e:c05::22f]:37723) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dlh6Y-00051i-Jd for guile-user@gnu.org; Sat, 26 Aug 2017 15:50:50 -0400 Original-Received: by mail-pg0-x22f.google.com with SMTP id 83so12049227pgb.4 for ; Sat, 26 Aug 2017 12:50:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=p9kp+rCZD3a8SIkXIcq7remOYQuno8OzUk+wqdtd+98=; b=camMipfAq7SDgnMaBQ7B6MuebsqnmhnuQJngZLS3d8B7rKCeDgvj8ixsKoN7rHYVn6 b+zc+gS91z0YiDV9+7CxLnDiGWiAO975ilB35KmW0HjcuTTSCCRbArlnmr6qhoIqPRFY 3CPbLJiHv2Xm0LeWhBSJF2nLhZw9xhWiLrE+8P0Nf10dasPTu+/HpDGIhCtQe/Aax7nl U+17GlqZJ9fOmmZ4tibIyIKJQQVpghjMLhzEIHj8rNfvI2pQFhG6QTU5Z4ymeIJY1e65 f2944Z7q2pkz9FkcHcddO+gQvT+hLruP05glpNTZbJ54q3+gZ3bCrFJlIpnGvFVV8O/b Urfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=p9kp+rCZD3a8SIkXIcq7remOYQuno8OzUk+wqdtd+98=; b=Lf3jH0u8nZRoWb3Q3K3v+lQQcK7LqWOhHb3j7txPDPMxu2VphuL12ohB7c4hY02wPi ZHt4hxpSyKuYe57KFfIgdxxx+5qa1ngkMK4dMQnS7Gf7NSMvreL2cNDvFVmPuvjYBHIc 2QjNK+45YBNj35HFJld3C+jWYarIVeFIX+pWkczyZOhGc4vaWi1frBxUBebnwnIj40vC V2P2E12u7T3Y98Pn87AhwR2IFM+z397X/YDZYtB3hkKNKiHYJOTfNuc2LPcZdYEYnTUj 132qC/cM53JqOio4FkGwjqG0213qvsHn1aXNdg1ZJBUkY1BEevLd8U+X/66h/Kb9Ya+W IcjA== X-Gm-Message-State: AHYfb5iAKQZWx5ydm3S+LT/xoR+9EhCJ4xDjyusWOKw7ifowVxW73Iiw I8Gx9C3Jo/SDyQ== X-Received: by 10.101.91.203 with SMTP id o11mr2561659pgr.321.1503777049308; Sat, 26 Aug 2017 12:50:49 -0700 (PDT) Original-Received: from nautilus.championbroadband.com (216-165-229-229.championbroadband.com. [216.165.229.229]) by smtp.gmail.com with ESMTPSA id r3sm17391980pfg.14.2017.08.26.12.50.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 26 Aug 2017 12:50:48 -0700 (PDT) In-Reply-To: <1a0f67f3.AEAAO93SX5gAAAAAAAAAAAPWCvIAAAACwQwAAAAAAAW9WABZodBb@mailjet.com> X-Mailer: Apple Mail (2.3273) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c05::22f X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:14060 Archived-At: > On Aug 26, 2017, at 12:47 PM, Arun Isaac = wrote: >=20 >=20 > Is there a Scheme or Guile equivalent to Emacs Lisp's `when-let' ? >=20 > Basically, I'm looking for a shorthand to express this: >=20 > (let ((x (foo)) > (when x > (bar x)))) >=20 > as this: >=20 > (when-let (x (foo)) > (bar x)) >=20 (use-modules (srfi srfi-2)) (and-let* ((x foo)) (bar x))