[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#31052: 26.0.91; Improve documentation of inline-letevals
From: |
Gemini Lasswell |
Subject: |
bug#31052: 26.0.91; Improve documentation of inline-letevals |
Date: |
Fri, 06 Apr 2018 13:29:23 -0700 |
User-agent: |
mu4e 0.9.18; emacs 26.0.91 |
Eli Zaretskii writes:
> When an element of @var{bindings} is just a symbol @var{var}, the
> result of evaluating @var{var} is re-bound to @var{var}.
>
> Is this what caused you to say it "does a completely different thing
> to symbols in the binding list"? Or did I misunderstand?
>
What caused me to say it does a completely different thing is that,
for example, if VAR is bound to 3 in an outside scope, inside:
(let (var) ...)
it will be bound to nil. But inside
(inline-letevals (var) ...)
it will be bound to 3. And if VAR is unbound in the outside scope,
let will bind it to nil and inline-letevals will signal an error.
It's occurred to me while writing this that
(inline-letevals (var) ...)
behaves much like
(let ((var (eval var))) ...)
although I'm not sure how to turn that into a concise explanation for
the documentation.