[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Date: Tue, 20 Oct 87 15:08 EDT
From: Kent M Pitman <KMP@STONY-BROOK.SCRC.Symbolics.COM>
Does anyone have an unambiguous reference to a passage that claims
that the syntax ``:1'' denotes a symbol? In the 3600 implementation,
it's a number and I've heard people claim that this is a bug, but
I just looked and could not find any text which convinced me of this.
Those people are wrong, see GLS's response below.
Date: Tue, 20 Oct 1987 15:24 EDT
How about pp339-341: "Any token that is not a potential number and
does not consist entirely of dots will always be taken as a symbol,
now and in the future; programs may rely on this fact."
":1" is not a potential number according to the rules on page 341.
":1" is not a single token in Symbolics' implementation. Table 22-1
says : is a constituent, but that cannot be correct, since it would
forbid the extension to factored package prefixes such as
"foo:(bar baz quux)". : is really a macro character. It's hard, for
me anyway, to tell whether this is a simple error in the description
of read syntax in CLtL, or whether it means Symbolics chooses not to
conform to a part of the language we disagree with. Fortunately it
makes little or no difference to the portability of practical programs.
Date: Tue, 20 Oct 87 16:23:07 EDT
So the token ":1" is an error and may be given any interpretation by
Agreed. No valid portable program may contain or depend on that syntax,
among numerous others.