Dmitry Alexandrov <d...@gnui.org> writes:

> but explicitly documented in (info "(elisp) Dotted Pair Notation") as well:
>
> #+begin_quote
>    As a somewhat peculiar side effect of ‘(a b . c)’ and ‘(a . (b . c))’
> being equivalent, for consistency this means that if you replace ‘b’
> here with the empty sequence, then it follows that ‘(a . c)’ and ‘(a . (
> . c))’ are equivalent, too.  This also means that ‘( . c)’ is equivalent
> to ‘c’, but this is seldom used.
> #+end_quote

Also this is what SRFI-119 / wisp generalizes to enable continuing the
argument list in indentation-based Scheme without introducing additional
syntax. In wisp, not only is =(equal? '(. wtf) 'wtf)=, but also

equal?
  ' a b c
  ' : . a b c

(a structure which is a syntax error in regular Scheme, so no ambiguity
is introduced: =(equal? '(a b c) '((. a b c)))= ⇒ missing close paren: b)

Best wishes,
Arne
-- 
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de

Attachment: signature.asc
Description: PGP signature

Reply via email to