Hi Zefram,

this is an interesting issue.  Here's a related one:

  https://bugs.gnu.org/48318

I think first of all #nil and '() should actually be equal?
to each other.  After all, both represent the empty list,
and checking structural equality between lists is one of the
common uses of equal?.

It might also be good, in addition, to make the Scheme writer
write (foo . #nil) as (foo . #nil).  The positive is that it
would make bugs in Elisp compatibility easier to see by not
masking the fact that one has #nil instead of () at the end
of a list.  The only negative I can think of is that it would
be mildly annoying to see (foo bar . #nil) where you expected
to see (foo bar), but I don't think that's ever really harmful.

Thoughts?


- Taylan



Reply via email to