]> git.saurik.com Git - bison.git/blobdiff - NEWS
Bench: syntactic sugar for %define/#define.
[bison.git] / NEWS
diff --git a/NEWS b/NEWS
index 1458cb2d3e06cf57bfca7276afedee34f2eebcbd..8a5fc93d4bae61876ecb78eafab2f2499e7adc31 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,30 @@
 Bison News
 ----------
 
-Changes in version 2.3a+ (????-??-??):
+Changes in version ?.? (????-??-??):
+
+* Java skeleton improvements:
+
+  The constants for token names were moved to the Lexer interface.
+  Also, it is possible to add code to the parser's constructors using
+  "%code init" and "%define init_throws".
+
+Changes in version 2.4 (2008-11-02):
+
+* %language is an experimental feature.
+
+  We first introduced this feature in test release 2.3b as a cleaner
+  alternative to %skeleton.  Since then, we have discussed the possibility of
+  modifying its effect on Bison's output file names.  Thus, in this release,
+  we consider %language to be an experimental feature that will likely evolve
+  in future releases.
+
+* Forward compatibility with GNU M4 has been improved.
+
+* Several bugs in the C++ skeleton and the experimental Java skeleton have been
+  fixed.
+
+Changes in version 2.3b (2008-05-27):
 
 * The quotes around NAME that used to be required in the following directive
   are now deprecated:
@@ -28,13 +51,36 @@ Changes in version 2.3a+ (????-??-??):
 
   See the new section `A Push Parser' in the Bison manual for details.
 
+  The current push parsing interface is experimental and may evolve.  More user
+  feedback will help to stabilize it.
+
 * The -g and --graph options now output graphs in Graphviz DOT format,
-  not VCG format.
+  not VCG format.  Like --graph, -g now also takes an optional FILE argument
+  and thus cannot be bundled with other short options.
+
+* Java
+
+  Bison can now generate an LALR(1) parser in Java.  The skeleton is
+  `data/lalr1.java'.  Consider using the new %language directive instead of
+  %skeleton to select it.
+
+  See the new section `Java Parsers' in the Bison manual for details.
+
+  The current Java interface is experimental and may evolve.  More user
+  feedback will help to stabilize it.
+
+* %language
+
+  This new directive specifies the programming language of the generated
+  parser, which can be C (the default), C++, or Java.  Besides the skeleton
+  that Bison uses, the directive affects the names of the generated files if
+  the grammar file's name ends in ".y".
+
+* XML Automaton Report
 
-* An experimental directive %language specifies the language of the
-  generated parser, which can be C (the default) or C++.  This
-  directive affects the skeleton used, and the names of the generated
-  files if the grammar file's name ends in ".y".
+  Bison can now generate an XML report of the LALR(1) automaton using the new
+  `--xml' option.  The current XML schema is experimental and may evolve.  More
+  user feedback will help to stabilize it.
 
 * The grammar file may now specify the name of the parser header file using
   %defines.  For example:
@@ -79,7 +125,8 @@ Changes in version 2.3a+ (????-??-??):
   bug affected only the `.output' file and not the generated parser source
   code.
 
-* --report-file=FILE is a new flag to override the default `.output' file name.
+* --report-file=FILE is a new option to override the default `.output' file
+  name.
 
 * The `=' that used to be required in the following directives is now
   deprecated:
@@ -126,7 +173,7 @@ Changes in version 2.3a+ (????-??-??):
   sometimes prove to be false alarms in existing grammars employing the Yacc
   constructs $0 or $-N (where N is some positive integer).
 
-  To enable these warnings, specify the flag `--warnings=midrule-values' or
+  To enable these warnings, specify the option `--warnings=midrule-values' or
   `-W', which is a synonym for `--warnings=all'.
 
 * Default %destructor or %printer with `<*>' or `<>'