Subject: bug#52063: 28.0.60; Confusing presentation of lambda

From: Filipp Gunbin <[email-masked]>
Date: Thu, 25 Nov 2021 03:09:15 +0300

On 24/11/2021 22:37 +0000, Gregory Heytings wrote:

>>> I'm annoyed by this misfeature.  If it means nothing to you and others,
>>> so be it.
>>
>> I fully understand desire to see function values printed as much as
>> possible as their original source code, but it's hard to reconcile this
>> with the needs of clean semantics, efficient execution, good code
>> analysis, ...
>>
>
> AFAIU, the fundamental question here is: is "(closure (t) args body)"
> different in any way from "(lambda args body)"?  If not, is there a good
> reason to use a "(closure (t)" instead of a "(lambda"?
>
> FWIW, I'm running an Emacs with the following patch right now, which
> apparently breaks a couple of edebug tests in make check.  Apart from
> that, it seems that it doesn't change anything in the way Emacs behaves.
>
> [..]

Please let's not do that.  We may need the context, that the function
originated as a closure, later for some reasons.  Rather, I like what
Stefan said, that we should keep the reference to the source.