>> "Ansley, Michael" <Michael.Ansley@intec.co.za> writes:
>> > I have a bit of a problem with reading this: a > -2 correctly,
>> > while not reading this: a>-2 correctly, because that implies that you
are
>> > using the space as a precedence operator. This should be done by
braces.
>>
>> Not at all: this is a strictly lexical issue (where do we divide the
>> input into tokens) and whitespace has been considered a reasonable
>> lexical separator for years. Furthermore, SQL already depends on
>> whitespace to separate tokens that are made of letters and digits.
>> You can't spell "SELECT" as "SEL ECT", nor "SELECT f1" as "SELECTf1",
>> nor does "SELECT 1 2;" mean "SELECT 12;". So it seems perfectly
>> reasonable to me to use whitespace to separate operator names when
>> there would otherwise be ambiguity about what's meant.
Point taken. So, if the spaces are used, then a>-2 is not the same as a>-
2. The latter should then generate an error, right?
<snip>
>> I think it would be a really bad idea for the lexical
>> analysis to depend on whether or not particular operator names
>> are defined, for the same reasons that lexical analysis of word
>> tokens doesn't depend on whether
>> there are keywords/table names/field names that match those tokens.
>> You get into circularity problems very quickly if you do that.
>> Language designers learned not to do that in the sixties...
Yes. Another point taken.
MikeA