STR-1: if-then-else operator
See the discussion on stratego-dev, e.g.:
Submitted on 18 March 2004 at 09:28
https://mail.cs.uu.nl/pipermail/stratego-dev/2004q1/000676.html
Issue Log
STR-1, martin:
The disambiguation of the if-then-else operator isn’t ok. The current implementation, which is the best I’ve been able to achieve without obfuscating the whole grammar, allows:“s ; if s then s else s ; s”
“s + if s then s else s + s”but not:
“s ; if s then s else s + s”
“s + if s then s else s ; s”I’ve no idea how to solve this completely in an acceptable way. The solution in the “Disambiguation Filters For Scannerless Generalized LR Parsers” article is ambiguous as well.
STR-1, martin:
Arthur & Rob suggested that using an “end” is fine. This has now been implemented in stratego-front.
STR-1, martin:
if-then-else-end is the solution for now.
Log in to post comments