Subject: Re: bug#24875: 26.0.50; In Dotted Pair Notation, the read function returns CDR if CAR is absent

From: Lars Ingebrigtsen <[email-masked]>
Date: Tue, 06 Jul 2021 19:15:09 +0200

Stefan Monnier <[email-masked]> writes:

> It's the "natural" behavior if you start from
>
>     (Ea . Ed)
>
> as the notation for cons cells and extend it to
>
>     (E1 E2 E3 .. . Ed)
>
> such that
>
>     (E1 {foo} . Ed) = (E1 . ({foo} . Ed))
>
> because then you replace `{foo}` with the empty sequence and you get:
>
>     (E1 . Ed) = (E1 . ( . Ed))
>
> and hence
>
>     Ed = ( . Ed)
>
> It's not used very often, so in theory we could potentially change it,
> but I haven't seen any good alternative interpretation for it, and
> I don't see the benefit of signaling an error.

Ah, I see!  Thanks for the explanation -- I now taken a stab at finding
a place in the Lisp manual to explain this (and explaining it slightly
shorter).  Feel free to adjust as required.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no