bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#55395: What does (1 2 3 . #2) mean?


From: Mattias Engdegård
Subject: bug#55395: What does (1 2 3 . #2) mean?
Date: Fri, 13 May 2022 22:01:44 +0200

13 maj 2022 kl. 19.20 skrev Stefan Monnier <monnier@iro.umontreal.ca>:

> The main goal is to avoid inf-looping and the #NNN chosen is
> somewhat arbitrary.

It seems to have sort-of worked before and was broken, inadvertently and with 
the best intentions, by a later change.

Additionally the #N value appears to be correct for other object types. For 
example,

  [a [b #1=[[c #1# d]]]]

is printed as

  [a [b [[c #2 d]]]]

which is consistent with the manual.

> I don't think it's worth it to try and make those #NNN more precise.

I have a simple patch but it is not based on master so it will have to wait.

> I'm personally more bothered by the fact that those #NNN use exactly the
> same syntax as used with `print-circle` yet they don't have the
> same semantics.

The syntax isn't exactly the same (#N vs #N= and #N#) but annoyingly close.

For that matter I would have preferred numbering the other way, starting at the 
bottom going up, like de Bruijn indices. That way the numbering would be local 
and wouldn't depend on where the circular subtree occurs. Technically that 
would be an easy change, and if we agree that the numbers are unreliable right 
now, we might as well.






reply via email to

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