summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkim Demaille <demaille@gostai.com>2012-01-25 16:36:03 +0100
committerAkim Demaille <demaille@gostai.com>2012-01-26 21:30:19 +0100
commit7aadf26359e95f8b113c972e42155c908bb850b8 (patch)
treed6a9451d6bf77ab82fb5314fa729a3054cc61161
parent48c4bf30fde8215e20e34a453bbae80b6af08844 (diff)
downloadbison-7aadf26359e95f8b113c972e42155c908bb850b8.tar.gz
maint: update TODO.
* TODO (Labeling the symbols): Remove, it's done ("Name references"). (cherry picked from commit 2c7f50be6247b4a03bdb27936ea6185cb6a7443c)
-rw-r--r--TODO25
1 files changed, 0 insertions, 25 deletions
diff --git a/TODO b/TODO
index 49928d09..5807ccdc 100644
--- a/TODO
+++ b/TODO
@@ -52,31 +52,6 @@ DeRemer and Penello: they already provide the algorithm.
* Extensions
-** Labeling the symbols
-Have a look at the Lemon parser generator: instead of $1, $2 etc. they
-can name the values. This is much more pleasant. For instance:
-
- exp (res): exp (a) '+' exp (b) { $res = $a + $b; };
-
-I love this. I have been bitten too often by the removal of the
-symbol, and forgetting to shift all the $n to $n-1. If you are
-unlucky, it compiles...
-
-But instead of using $a etc., we can use regular variables. And
-instead of using (), I propose to use `:' (again). Paul suggests
-supporting `->' in addition to `:' to separate LHS and RHS. In other
-words:
-
- r:exp -> a:exp '+' b:exp { r = a + b; };
-
-That requires an significant improvement of the grammar parser. Using
-GLR would be nice. It also requires that Bison know the type of the
-symbols (which will be useful for %include anyway). So we have some
-time before...
-
-Note that there remains the problem of locations: `@r'?
-
-
** $-1
We should find a means to provide an access to values deep in the
stack. For instance, instead of