Hi Tomas,

> In other words, the dot inside a list must be on its own (separated by
> whitespace) to have the "cons" meaning.  I think that Common Lisp
> behaviour "makes more sense" in this regard and is "less restrictive".

You are completely right. The current situation is dissatisfying.

This has historical reasons, as in the first versions of picoLisp the
dot was a meta-character (could not be part of a symbol), on the same
level as '(' and ')'. Then '(a.b)' expanded to '(a . b)', which was kind
of consistent.

Later it became necessary to have the dot appear at least in numbers,
because otherwise (1.2) would be a cons pair of two numberes instead of
a fixpoint number. As a side effect, symbol names could now contain a
dot - but should not begin with one.

The correct solution would be - as you write - to allow the dot anywhere
within a symbol name. But this would require a significant re-write of
the reader, because an addional character look-ahead would be necessary.

I cannot solve this problem in the short range, but try to fix it as
soon as I have more time.

- Alex
UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe

Reply via email to