[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#62840: 30.0.50; Doc bug: obsolete paragraph in Elisp Ref
From: |
Eli Zaretskii |
Subject: |
bug#62840: 30.0.50; Doc bug: obsolete paragraph in Elisp Ref |
Date: |
Sat, 15 Apr 2023 11:39:05 +0300 |
> From: Nick Dokos <ndokos@gmail.com>
> Date: Fri, 14 Apr 2023 13:48:59 -0400
>
>
> ---------------------------------------------------------------------------
> Emacs Lisp Reference manual, Chapter "Variables", Section "Lexical
> Binding" says:
>
> --8<---------------cut here---------------start------------->8---
> ...
> (Internally, the lexical environment is an alist of symbol-value
> pairs, with the final element in the alist being the symbol ‘t’ rather
> than a cons cell. Such an alist can be passed as the second argument to
> the ‘eval’ function, in order to specify a lexical environment in which
> to evaluate a form. *Note Eval::. Most Emacs Lisp programs, however,
> should not interact directly with lexical environments in this way; only
> specialized programs like debuggers.)
>
> ...
> --8<---------------cut here---------------end--------------->8---
>
> I don't know if the structure of the lexical environment was ever really
> relevant: it seems to be an internal detail that should not have found
> its way into the documentation in the first place, but that's guessing
> on my part.
>
> The important thing is that it does not seem to be the case any longer:
> the `t' is present at the end of the lexical environment in Emacs 28.2:
>
> (let ((foo 233)) (lambda (x) (* x foo))) ==> (closure ((foo . 233) t) (x)
> (* x foo))
>
> but it is no longer present in current upstream:
>
> (let ((foo 233)) (lambda (x) (* x foo))) ==> (closure ((foo . 233)) (x)
> (* x foo))
>
> so the above paragraph needs modification (if not outright excision).
Stefan, any comments? Should this text be amended, deleted, or
something else?