GNU bug report logs - #74540
30.0.91; mention special variables in lexbind Info page

Previous Next

Package: emacs;

Reported by: Mike Kupfer <kupfer <at> rawbw.com>

Date: Tue, 26 Nov 2024 00:53:02 UTC

Severity: normal

Found in version 30.0.91

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#74540: closed (30.0.91; mention special variables in lexbind
 Info page)
Date: Thu, 28 Nov 2024 15:29:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Thu, 28 Nov 2024 17:28:31 +0200
with message-id <86o71zcr8g.fsf <at> gnu.org>
and subject line Re: bug#74540: 30.0.91; mention special variables in lexbind Info page
has caused the debbugs.gnu.org bug report #74540,
regarding 30.0.91; mention special variables in lexbind Info page
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
74540: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=74540
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Mike Kupfer <kupfer <at> rawbw.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.0.91; mention special variables in lexbind Info page
Date: Mon, 25 Nov 2024 16:52:05 -0800
[Message part 3 (text/plain, inline)]
When I first read up on lexical binding, I didn't realize that I also
needed to review the documentation for dynamic binding, so that I
could learn about special variables.  I think it would be good for the
Info page for lexical binding to mention special variables, clarify
that the specialness also affects new bindings (not just the initial
defvar/defcustom/defconst), and provide a link to the page for dynamic
binding (for details about special variables).

I've enclosed a draft patch for your consideration.

thanks,
mike

[lexbind-special-vars.patch (text/x-diff, inline)]
user:        Mike Kupfer <kupfer <at> rawbw.com>
date:        Mon Nov 25 15:37:53 2024 -0800
files:       doc/lispref/variables.texi
description:
Mention special variables in lexical binding documentation

* doc/lispref/variables.texi (Lexical Binding): Briefly mention
special variables and their semantics.


diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi
--- a/doc/lispref/variables.texi
+++ b/doc/lispref/variables.texi
@@ -1096,7 +1096,7 @@
 @end example
 
 @noindent
-The @code{let} binding defines a lexical environment in which the
+Here, the @code{let} binding defines a lexical environment in which the
 variable @code{x} is locally bound to 0.  Within this binding
 construct, we define a lambda expression which increments @code{x} by
 one and returns the incremented value.  This lambda expression is
@@ -1113,6 +1113,12 @@
 variable's dynamic binding (i.e., the contents of its symbol's value
 cell).
 
+  Note also that variables may be declared special, in which case they
+will use dynamic binding, even for new bindings such as a @code{let}
+binding.  Depending on how the variable is declared, it can be
+special globally, for a single file, or for a portion of a file.
+@xref{Dynamic Binding} for details.
+
 @node Dynamic Binding
 @subsection Dynamic Binding
 

[Message part 5 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org>
To: Mike Kupfer <kupfer <at> rawbw.com>
Cc: 74540-done <at> debbugs.gnu.org
Subject: Re: bug#74540: 30.0.91; mention special variables in lexbind Info page
Date: Thu, 28 Nov 2024 17:28:31 +0200
> From: Mike Kupfer <kupfer <at> rawbw.com>
> Date: Mon, 25 Nov 2024 16:52:05 -0800
> 
> When I first read up on lexical binding, I didn't realize that I also
> needed to review the documentation for dynamic binding, so that I
> could learn about special variables.  I think it would be good for the
> Info page for lexical binding to mention special variables, clarify
> that the specialness also affects new bindings (not just the initial
> defvar/defcustom/defconst), and provide a link to the page for dynamic
> binding (for details about special variables).
> 
> I've enclosed a draft patch for your consideration.

Thanks, installed on the emacs-30 branch, and closing the bug.


This bug report was last modified 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.