help-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Parsing a language with optional spaces


From: uxio prego
Subject: Re: Parsing a language with optional spaces
Date: Tue, 7 Jul 2020 13:48:19 +0200

Hi,

> On 7 Jul 2020, at 10:55, John P. Hartmann <jphartmann@gmail.com> wrote:
> 
> On 7/7/20 05:35, Akim Demaille wrote:
>> I believe you need to read again the documentation of /
>> 'r/s'
> 
> It is not as simple as that.  As I don't speak BASIC, let me rephrase this 
> problem in FORTRAN IV which is also "blank agnostic":
> 
> DO <number> <variable> = <expression> , <expression> [, <expression>]
> 
> It is not until you reach the comma after the first expression that you know 
> whether the statement is the beginning of a loop or it is an assignment.  And 
> the expression can contain commas in function calls, which defeats any 
> trivial lookahead scanning.  E.g.,
> 
> D O 17 6PQ R=FUN X(1 4, V 8)
> 
> is an assignment to variable DO176PQR.  The function arguments can also be 
> expressions that contain function calls.
> 
> As you can see, this more or less defeats any attempt to write a lex scanner. 
>  And you cannot just squeeze out all blanks in a front end because "Hollerith 
> fields" can contain blanks that are significant (must remain).

Then you couple the squeeze out all blanks approach with BEGIN/END %x regions?

https://lists.gnu.org/archive/html/help-bison/2020-07/msg00012.html

FBCC uses regions, sorry can't find proper documentation but 
https://bellard.org//fbcc/

I'd rather shoot myself on a foot than use regions. IDK if that closes a loop 
on the elegance question. But the tool's been there since forever.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]