From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tom Tromey Newsgroups: gmane.emacs.devel Subject: Re: Patch for fields of `struct buffer' Date: Mon, 31 Jan 2011 11:38:51 -0700 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1296499151 14314 80.91.229.12 (31 Jan 2011 18:39:11 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 31 Jan 2011 18:39:11 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jan 31 19:39:06 2011 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.69) (envelope-from ) id 1PjyeW-0006Zd-0h for ged-emacs-devel@m.gmane.org; Mon, 31 Jan 2011 19:39:04 +0100 Original-Received: from localhost ([127.0.0.1]:44219 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PjyeV-00051c-KI for ged-emacs-devel@m.gmane.org; Mon, 31 Jan 2011 13:39:03 -0500 Original-Received: from [140.186.70.92] (port=51270 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PjyeQ-00051B-Bh for emacs-devel@gnu.org; Mon, 31 Jan 2011 13:38:59 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PjyeP-0002MY-8A for emacs-devel@gnu.org; Mon, 31 Jan 2011 13:38:58 -0500 Original-Received: from mx1.redhat.com ([209.132.183.28]:38875) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PjyeN-0002LV-I0; Mon, 31 Jan 2011 13:38:55 -0500 Original-Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id p0VIcrk4026171 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 31 Jan 2011 13:38:53 -0500 Original-Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p0VIcr85009136; Mon, 31 Jan 2011 13:38:53 -0500 Original-Received: from opsy.redhat.com (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id p0VIcqeV018432; Mon, 31 Jan 2011 13:38:52 -0500 Original-Received: by opsy.redhat.com (Postfix, from userid 500) id 4108F3782CA; Mon, 31 Jan 2011 11:38:52 -0700 (MST) X-Attribution: Tom In-Reply-To: (Stefan Monnier's message of "Mon, 31 Jan 2011 12:02:30 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.132.183.28 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:135328 Archived-At: Tom> That is, if you make a closure, and then in the body of it you Tom> let-bind one of its captured variables, is that let-binding Tom> thread-local? Stefan> Variables that are captured by a closure are (by definition) lexically Stefan> scoped, so they should not be affected by Stefan> buffer/thread/keyboard-localness which only applies to Stefan> dynamically-scoped variables. Ok, I think I see. I was trying to construct a test case and, IIUC, an inner `let' would make a new lexically-bound variable, not dynamically bind the outer one. Is that correct? I would try it but last time I checked out lexbind, I couldn't get it to build. Is it working now? Tom