I agree with Alex, Tomas you should focus your energy on other less archaic things :)
/Henrik On Sun, Oct 4, 2009 at 5:01 PM, Alexander Burger <[email protected]> wrot= e: > 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: > > =A0 The dot '.' has a dual nature. It is a meta character when standing > =A0 alone, denoting a dotted pair, but can otherwise be used in symbol > =A0 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:[email protected]?subject=3dunsubscribe > -- UNSUBSCRIBE: mailto:[email protected]?subject=unsubscribe
