[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: [ANN] GSL Shell new beta release with anti-gran graphics module
- From: Francesco Abbate <gslshell@...>
- Date: Thu, 3 Dec 2009 17:51:00 +0100
2009/12/3 David Kastrup <dak@gnu.org>:
> If you say the latter, then you need to extend the precedence hierarchy
> of Lua by another level. There are already 8 levels.
>
> Is this syntax extension worth introducing another precedence level?
Actually there is a shift/reduce conflict in the grammar since the expression
|x| x or y
can be parsed as:
(|x| x) or y
or
|x| (x or y)
But please note that for your example, there is no difference between
|x| x+y
and
|x| x or y
Since both '+' and 'or' are considered operators.
The answer is that once '|' args '|' is parsed Lua recursive descent
parser just look for an 'expr' and will eat (shift) everything that
looks as an expression. So something like
|x| x or y
will always be parsed as |x| (x or y) and no new precedence level has
been introduced.
Francesco