[fpc-pascal] New feature: IfThen() intrinsic
Michael Van Canneyt
michael at freepascal.org
Mon Feb 1 13:29:38 CET 2016
On Mon, 1 Feb 2016, Maciej Izak wrote:
> 2016-02-01 13:09 GMT+01:00 Michael Van Canneyt <michael at freepascal.org>:
>>
>> No. The compiler already uses &.
>>
>> & means 'the following is an identifier even if it is a keyword'.
>>
>> You can perfectly declare and compile:
>>
>> Var
>> &if : integer;
>>
>> begin
>> &if:=1;
>> end.
>>
>> So &if is a bad idea.
>
>
> Yes it is possible. Anyway it is better idea than IfThen. You treat facts
> selectively. How often is used &if and how often is used IfThen?
You missed my point.
>
> &IfThen looks also good (I like shorter syntax &if). With "&" prefix it is
> obvious that this function is unique.
You misunderstand.
The & character cannot be used as part of an identifier, it is a special token.
It is eaten by the scanner. The parser will never see it.
You simply cannot define "&if' as an identifier. The parser will always see 'if'.
scanner.pas around line 4607.
And modifying the scanner for this exception is a REALLY bad idea.
Michael.
More information about the fpc-pascal
mailing list