Hi Tomas, thanks for the input!
I think you take this matter too seriously. The core of the problem is simply a 50-years-old fault in the Lisp syntax: The "dot" notation is written with a dot, but it is desirable to use the dot also in atoms (most notably in numbers). A better design would have been to use some other meta character, e.g. the vertical slash as in other languages. A "dotted" pair would then look like (a | b) Besides this, I think the situation in PicoLisp is clear and well- defined: The dot is allowed as _part_ of a symbol name, but _not_ as a symbol name per se. A stand-alone dot is a meta character. This is also mentioned in "doc/ref.html" in the "Internal Symbols" section: The dot '.' has a dual nature. It is a meta character when standing alone, denoting a dotted pair, but can otherwise be used in symbol names. Thus, in a dotted pair, it must be surrounded by delimiters (this is a fix I introduced recently because of your (correct) criticism). In all other situations (allowing the dot as a stand-alone symbol) you will always create confusion. > ... <examples proving my statement omitted> > : '(. . 1 . 2) > (\. . 1) -- Bad dotted pair > ? -> 2 > ... > : (quote . (1 2 3 . 4 . 5)) > -> (1 2 3 . 5) > : (quote . (1 2 3 . 4 . 5 . 6 .)) > -> (1 2 3 .) > > Does such a behaviour make more sense to others to? I think this makes things worse. Should a dot in these examples be a single-dot-symbol, or does it mark a dotted pair? I would always prefer to get an error here. Other opinions? Cheers, - Alex -- UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe