From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: abq@bitrot.link Newsgroups: gmane.emacs.devel Subject: Re: Why is lexical-binding's global value ignored? Date: Sat, 28 Jan 2023 09:11:41 -0700 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="25159"; mail-complaints-to="usenet@ciao.gmane.io" To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Jan 28 17:41:56 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pLoH5-0006Nt-Kr for ged-emacs-devel@m.gmane-mx.org; Sat, 28 Jan 2023 17:41:56 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pLoGT-00052p-MH; Sat, 28 Jan 2023 11:41:18 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pLnnw-0001pQ-Cd for emacs-devel@gnu.org; Sat, 28 Jan 2023 11:11:48 -0500 Original-Received: from relay2-d.mail.gandi.net ([217.70.183.194]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pLnnt-0004CL-UZ for emacs-devel@gnu.org; Sat, 28 Jan 2023 11:11:48 -0500 Original-Received: (Authenticated sender: root@bitrot.link) by mail.gandi.net (Postfix) with ESMTPA id 2E58540002 for ; Sat, 28 Jan 2023 16:11:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bitrot.link; s=gm1; t=1674922302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ogyKbwDfwGMWz2QLqM9twZ1tjoHHYlJXEhqNWtbuQHQ=; b=FC51+b3vg3OZ447e+HvD+z26tcEjlTQblEaSrQIqm0oe+c+V92Og8OIn/TWYDUJc+w0GS3 sq7DjF9RU+Um2IN72E8sQ1ao79BtII4l0MOWzxPGt3D0oylSStZFhjRVG+L6xAIK7M7ZYP xqTmxAVLkJ1fFzqjm8hcRiFVaGbasSkzz4pfSfU29e28/3xNFrYC1/88BjsdAr7Hwob9p3 aFQU4O39gWlBhfmUFHZHwsaxPtdz6UoCnGlBnX8720VUrFaPdIk3GTHXVXz/VcdKSATbi9 z7+lUp6M9HdywLoEfzMigejUTh5I9i+DkuBhGmxOrEBrrg5hKgyAEZpIu4AuyQ== In-Reply-To: X-Sender: abq@bitrot.link Received-SPF: pass client-ip=217.70.183.194; envelope-from=abq@bitrot.link; helo=relay2-d.mail.gandi.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 28 Jan 2023 11:41:11 -0500 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:302721 Archived-At: tomas wrote: > I think it's backward compatibility, mainly. Files with no explicit > lexical binding setting (may) contain code which expects dynamic > binding and would break. As I mentioned, the global value of lexical-binding defaults to nil. This is the case in Emacs 24 through 28, and obviously will be in 29 too. Therefore, even if the global value were honored in 29 and future versions, files with no explicit setting would continue to get dynamic binding, as they expect. They won't break. In order to break anything, you would have to do so explicitly, via (setq-default lexical-binding t).