emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Distinguishing `consp` and `functionp`


From: Po Lu
Subject: Re: Distinguishing `consp` and `functionp`
Date: Sat, 27 Jan 2024 21:20:48 +0800
User-agent: Gnus/5.13 (Gnus v5.13)

Daniel Mendler via "Emacs development discussions."
<emacs-devel@gnu.org> writes:

> What about only dropping the list-based closure representation as a
> first step, switching it over to a vector-based one?
>
> (functionp '(closure (t) nil t)) => nil (currently t)
> (funcall   '(closure (t) nil t)) => error (currently t)
>
> Unfortunately quoted lambdas are still common in packages which have not
> been updated for longer.

There is definitely code in the wild which prints precisely these lists
into files or provides them to subprocesses, so this is not acceptable.

But AFAIU it's not what Stefan proposed either, only modifying the
behavior of functionp and the types of objects generated by the byte
compiler or `function'.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]