From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: bojohan+news@dd.chalmers.se (Johan =?utf-8?Q?Bockg=C3=A5rd?=) Newsgroups: gmane.emacs.devel Subject: Re: Two binding features Date: Wed, 07 May 2008 20:47:26 +0200 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1210186075 2443 80.91.229.12 (7 May 2008 18:47:55 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 7 May 2008 18:47:55 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed May 07 20:48:30 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1Jtogo-0006rG-9J for ged-emacs-devel@m.gmane.org; Wed, 07 May 2008 20:48:30 +0200 Original-Received: from localhost ([127.0.0.1]:46893 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jtog6-0000Ns-CX for ged-emacs-devel@m.gmane.org; Wed, 07 May 2008 14:47:46 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Jtog3-0000Nn-2D for emacs-devel@gnu.org; Wed, 07 May 2008 14:47:43 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Jtog0-0000Nb-I6 for emacs-devel@gnu.org; Wed, 07 May 2008 14:47:41 -0400 Original-Received: from [199.232.76.173] (port=37222 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jtog0-0000NY-DC for emacs-devel@gnu.org; Wed, 07 May 2008 14:47:40 -0400 Original-Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Jtog0-00073a-Au for emacs-devel@gnu.org; Wed, 07 May 2008 14:47:40 -0400 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1Jtofs-0004Yp-UG for emacs-devel@gnu.org; Wed, 07 May 2008 18:47:32 +0000 Original-Received: from remote5.student.chalmers.se ([129.16.29.83]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 07 May 2008 18:47:32 +0000 Original-Received: from bojohan+news by remote5.student.chalmers.se with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 07 May 2008 18:47:32 +0000 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: emacs-devel@gnu.org Original-Lines: 21 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: remote5.student.chalmers.se Mail-Copies-To: never User-Agent: Gnus/5.110009 (No Gnus v0.9) Emacs/23.0.60 (gnu/linux) Cancel-Lock: sha1:PLIcSTojbIbrza+isC1O5/Qoj3g= X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:96704 Archived-At: Richard M Stallman writes: > * A primitive that would let-bind variables from an alist. > I think Common Lisp has such a construct; is that correct? > I do not recall its name, though. progv is a Lisp macro in `cl-macs.el'. (progv SYMBOLS VALUES &rest BODY) Bind SYMBOLS to VALUES dynamically in BODY. The forms SYMBOLS and VALUES are evaluated, and must evaluate to lists. Each symbol in the first list is bound to the corresponding value in the second list (or made unbound if VALUES is shorter than SYMBOLS); then the BODY forms are executed and their result is returned. This is much like a `let' form, except that the list of symbols can be computed at run-time. -- Johan Bockgård