todo: update

This commit is contained in:
Akim Demaille
2019-12-31 07:29:11 +01:00
parent a0675d707f
commit 8426663631

27
TODO
View File

@@ -1,4 +1,8 @@
* Bison 3.6 * Bison 3.6
** Consistency
YYUNDEFTOK is an internal symbol number, as YYTERROR.
But YYERRCODE is an external token number.
** doc ** doc
I feel its ugly to use the GNU style to declare functions in the doc. It I feel its ugly to use the GNU style to declare functions in the doc. It
generates tons of white space in the page, and may contribute to bad page generates tons of white space in the page, and may contribute to bad page
@@ -50,6 +54,15 @@ syntax error, unexpected $end, expecting ↦ or 🎅🐃 or '\n'
While at it, we should stop using "$end" by default, in favor of "end of While at it, we should stop using "$end" by default, in favor of "end of
file", or "end of input", whatever. See how lalr1.java does that. file", or "end of input", whatever. See how lalr1.java does that.
** Better error messages
The users are not provided with enough tools to forge their error messages.
See for instance "Is there an option to change the message produced by
YYERROR_VERBOSE?" by Simon Sobisch, on bison-help.
See also
https://www.cs.tufts.edu/~nr/cs257/archive/clinton-jefferey/lr-error-messages.pdf
and https://research.swtch.com/yyerror.
** consistency ** consistency
token vs terminal, variable vs non terminal. token vs terminal, variable vs non terminal.
@@ -436,6 +449,11 @@ An Experimental Ambiguity Detection Tool Sylvain Schmitz
LORIA, INRIA Nancy - Grand Est, Nancy, France LORIA, INRIA Nancy - Grand Est, Nancy, France
* Extensions * Extensions
** More languages?
Well, only if there is really some demand for it.
https://github.com/scfc/bison-php/blob/master/data/lalr1.php
** Multiple start symbols ** Multiple start symbols
Would be very useful when parsing closely related languages. The idea is to Would be very useful when parsing closely related languages. The idea is to
declare several start symbols, for instance declare several start symbols, for instance
@@ -458,15 +476,6 @@ happen with yy_start: stmt | expr). Then adjust the skeletons so that this
initial token (YY_START_STMT, YY_START_EXPR) be shifted first in the initial token (YY_START_STMT, YY_START_EXPR) be shifted first in the
corresponding parse function. corresponding parse function.
** Better error messages
The users are not provided with enough tools to forge their error messages.
See for instance "Is there an option to change the message produced by
YYERROR_VERBOSE?" by Simon Sobisch, on bison-help.
See also
https://www.cs.tufts.edu/~nr/cs257/archive/clinton-jefferey/lr-error-messages.pdf
and https://research.swtch.com/yyerror.
** %include ** %include
This is a popular demand. We already made many changes in the parser that This is a popular demand. We already made many changes in the parser that
should make this reasonably easy to implement. should make this reasonably easy to implement.