From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: lexical-binding rationale? Date: Thu, 12 Jan 2012 17:00:01 -0500 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1326405630 23398 80.91.229.12 (12 Jan 2012 22:00:30 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 12 Jan 2012 22:00:30 +0000 (UTC) Cc: Dave Abrahams , emacs-devel@gnu.org To: Glenn Morris Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jan 12 23:00:23 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RlSh0-0006g8-Dq for ged-emacs-devel@m.gmane.org; Thu, 12 Jan 2012 23:00:18 +0100 Original-Received: from localhost ([::1]:47471 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RlSgz-0003Qs-K2 for ged-emacs-devel@m.gmane.org; Thu, 12 Jan 2012 17:00:17 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:40991) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RlSgw-0003Qa-1L for emacs-devel@gnu.org; Thu, 12 Jan 2012 17:00:15 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RlSgu-0002ix-Ni for emacs-devel@gnu.org; Thu, 12 Jan 2012 17:00:14 -0500 Original-Received: from pruche.dit.umontreal.ca ([132.204.246.22]:39424) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RlSgn-0002fe-PI; Thu, 12 Jan 2012 17:00:05 -0500 Original-Received: from faina.iro.umontreal.ca (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id q0CM02vv002810; Thu, 12 Jan 2012 17:00:02 -0500 Original-Received: by faina.iro.umontreal.ca (Postfix, from userid 20848) id 16A94B40FA; Thu, 12 Jan 2012 17:00:02 -0500 (EST) In-Reply-To: (Glenn Morris's message of "Thu, 12 Jan 2012 15:51:39 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux) X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV4099=0 X-NAI-Spam-Version: 2.2.0.9309 : core <4099> : streams <719107> : uri <1045674> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 132.204.246.22 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:147634 Archived-At: >> I'm sure this has been discussed to death, so please feel free to >> respond with a link, but... can anyone point me to a rationale for >> dynamically altering such a fundamental language behavior on the basis >> of a variable's value? > It's easy to use on a per-file basis, and in the majority of cases > allows the source to be transparently backwards compatible with > older/other versions of Emacs; so why not. Since it's a fait accompli, > discussing alternative ways it might have been done are only going to be > of academic interest. > I never did get an answer to my question about whether the setting HAS > to go in the first line of the file though. I still don't know. > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8610#8 The intention is that it should work like any other file-local setting so it can go in the end as well, but I haven't checked that lisp_file_lexically_bound_p handles that cases correctly. If it doesn't, then the file would be mis-handled when loading it uncompiled (which is the only case where lisp_file_lexically_bound_p is used). Stefan