Release Digest: GNU, October 15, 2002

Serveez 0.1.4

Serveez 0.1.4 has been released.

Serveez is a server framework; it provides routines and help for
IP-based servers (TCP, UDP and ICMP) as well as "named pipes". It
demonstrates portable network programming optimized for speed and

It is available from http://ftp.gnu.org/gnu/serveez/ and mirrors of that
site (see list of mirror sites at http://www.gnu.org/order/ftp.html).

Changes in this release:

  The new version of Serveez contains lots of bug fixes in the
internal coservers as well as in the Guile server implementation. The
Win32 binary release uses zlib version 1.1.4, also due to a bug fix
  Support for HP-UX platforms and urgent (out-of-band) data on
stream-like network connections have been added. The socket objects
now provide trigger callbacks and the server objects a reset callback
invoked when SIGHUP occurred. The standard input of the program can
be used as configuration file.
  The Guile server documentation was partly rewritten and updated.
A simplified icecast Guile server demonstrates the usage of the coservers
from Guile.

So long,


Bison 1.75

Bison 1.75 is now available for download.

GNU Bison is a general-purpose parser generator that converts a
grammar description for an LALR(1) context-free grammar into a C
program to parse that grammar.  Once you are proficient with Bison,
you may use it to develop a wide range of language parsers, from those
used in simple desk calculators to complex programming languages.

Bison is upward compatible with Yacc: all properly-written Yacc
grammars ought to work with Bison with no change.  Anyone familiar
with Yacc should be able to use Bison with little trouble.  You need
to be fluent in C programming in order to use Bison or to understand
this manual.

This release fixes several problems found in 1.50.

The most significant changes between Bison 1.35 and 1.75 are:

1. Many limitations on parser size have been removed.

2. A GLR parser output is available, which makes it possible to parse
   any context free grammar, included ambiguous grammars.  This typically
   allows one to parse ``naturally'' contrived grammars such as C++'s.
   This is contributed by Paul Hilfinger.

3. The machinery has been revamped to ease the creation of new kinds of

This release is the result of the efforts from Robert Anisko, Akim
Demaille, Paul Eggert, Paul Hilfinger, and many others.  Special
thanks to Hans Aberg for his support.

You may find GNU Bison at the following location:

  ftp://ftp.gnu.org/gnu/bison/bison-1.75.tar.gz       (959 KB)
  ftp://ftp.gnu.org/gnu/bison/bison-1.75.tar.bz2      (759 KB)
  ftp://ftp.gnu.org/gnu/bison/bison-1.50-1.75.xdelta   (66 KB)

Soon it will also appear on the GNU mirrors listed here:


Here are the MD5 and SHA1 signatures:

b1d4c7b1d2f73ec0ba624c07c0aba79c  bison-1.75.tar.gz/
dd88fe42e35d554c00af430a9342456a  bison-1.75.tar.bz/2
0e3867b39430474b339876a221540784  bison-1.50-1.75.xdelta/
d28017b0113ad85a4d62da22ab86b08894b149c7  bison-1.75.tar.gz/
c3aaf4a59b69399e62d0e5c024cc0929dcdd07f6  bison-1.75.tar.bz/2
78dbecadde6fd65b4f4c0836c4081fe5a3b1b9c4  bison-1.50-1.75.xdelta/

Please report bugs by email to .


Changes in version 1.75, 2002-10-14:

* Bison should now work on 64-bit hosts.

* Indonesian translation thanks to Tedi Heriyanto.

* GLR parsers
  Fix spurious parse errors.

* Pure parsers
  Some people redefine yyerror to steal yyparse' private variables.
  Reenable this trick until an official feature replaces it.

* Type Clashes
  In agreement with POSIX and with other Yaccs, leaving a default
  action is valid when $$ is untyped, and $1 typed:

        untyped: ... typed;

  but the converse remains an error:

        typed: ... untyped;

* Values of mid-rule actions
  The following code:

        foo: { ... } { $$ = $1; } ...

  was incorrectly rejected: $1 is defined in the second mid-rule
  action, and is equal to the $$ of the first mid-rule action.

Changes in version 1.50, 2002-10-04:

* GLR parsing
  The declaration
  causes Bison to produce a Generalized LR (GLR) parser, capable of handling
  almost any context-free grammar, ambiguous or not.  The new declarations
  %dprec and %merge on grammar rules allow parse-time resolution of
  ambiguities.  Contributed by Paul Hilfinger.

  Unfortunately Bison 1.50 does not work properly on 64-bit hosts
  like the Alpha, so please stick to 32-bit hosts for now.

* Output Directory
  When not in Yacc compatibility mode, when the output file was not
  specified, running `bison foo/bar.y' created `foo/bar.c'.  It
  now creates `bar.c'.

* Undefined token
  The undefined token was systematically mapped to 2 which prevented
  the use of 2 by the user.  This is no longer the case.

* Unknown token numbers
  If yylex returned an out of range value, yyparse could die.  This is
  no longer the case.

* Error token
  According to POSIX, the error token must be 256.
  Bison extends this requirement by making it a preference: if the
  user specified that one of her tokens is numbered 256, then error
  will be mapped onto another number.

* Verbose error messages
  They no longer report `..., expecting error or...' for states where
  error recovery is possible.

* End token
  Defaults to `$end' instead of `$'.

* Error recovery now conforms to documentation and to POSIX
  When a Bison-generated parser encounters a syntax error, it now pops
  the stack until it finds a state that allows shifting the error
  token.  Formerly, it popped the stack until it found a state that
  allowed some non-error action other than a default reduction on the
  error token.  The new behavior has long been the documented behavior,
  and has long been required by POSIX.  For more details, please see

* Traces
  Popped tokens and nonterminals are now reported.

* Larger grammars
  Larger grammars are now supported (larger token numbers, larger grammar
  size (= sum of the LHS and RHS lengths), larger LALR tables).
  Formerly, many of these numbers ran afoul of 16-bit limits;
  now these limits are 32 bits on most hosts.

* Explicit initial rule
  Bison used to play hacks with the initial rule, which the user does
  not write.  It is now explicit, and visible in the reports and
  graphs as rule 0.

* Useless rules
  Before, Bison reported the useless rules, but, although not used,
  included them in the parsers.  They are now actually removed.

* Useless rules, useless nonterminals
  They are now reported, as a warning, with their locations.

* Rules never reduced
  Rules that can never be reduced because of conflicts are now

* Incorrect `Token not used'
  On a grammar such as

           %token useless useful
           exp: '0' %prec useful;

  where a token was used to set the precedence of the last rule,
  bison reported both `useful' and `useless' as useless tokens.

* Revert the C++ namespace changes introduced in 1.31
  as they caused too many portability hassles.

* Default locations
  By an accident of design, the default computation of @$ was
  performed after another default computation was performed: @$ = @1.
  The latter is now removed: YYLLOC_DEFAULT is fully responsible of
  the computation of @$.

* Token end-of-file
  The token end of file may be specified by the user, in which case,
  the user symbol is used in the reports, the graphs, and the verbose
  error messages instead of `$end', which remains being the default.
  For instance
     %token YYEOF 0
     %token YYEOF 0 "end of file"

* Semantic parser
  This old option, which has been broken for ages, is removed.

* New translations
  Brazilian Portuguese, thanks to Alexandre Folle de Menezes.
  Croatian, thanks to Denis Lackovic.

* Incorrect token definitions
  When given `%token 'a' "A"', Bison used to output `#define 'a' 65'.

* Token definitions as enums
  Tokens are output both as the traditional #define's, and, provided
  the compiler supports ANSI C or is a C++ compiler, as enums.
  This lets debuggers display names instead of integers.

* Reports
  In addition to --verbose, bison supports --report=THINGS, which
  produces additional information:
  - itemset
    complete the core item sets with their closure
  - lookahead
    explicitly associate lookaheads to items
  - solved
    describe shift/reduce conflicts solving.
    Bison used to systematically output this information on top of
    the report.  Solved conflicts are now attached to their states.

* Type clashes
  Previous versions don't complain when there is a type clash on
  the default action if the rule has a mid-rule action, such as in:

      %type  bar
      bar: '0' {} '0';

  This is fixed.

* GNU M4 is now required when using Bison.


GLPK 3.2.2

GLPK 3.2.2 -- Release Information

Release date: Oct 14, 2002

GLPK (GNU Linear Programming Kit) is intended for solving large-scale
linear programming (LP), mixed integer linear programming (MIP), and
other related problems. It is a set of routines written in ANSI C and
organized in the form of a callable library.

Now GLPK includes the api routine lpx_read_lpt intended to read LP/MIP
data prepared in CPLEX LP format. Description of this format is given in
the GLPK Reference Manual, a new edition of which is also included in
the distribution (see files 'refman.latex', 'refman.dvi', 'refman.ps' in
the subdirectory 'doc'). In order to use data files in CPLEX LP format
with the solver glpsol the option '--lpt' should be specified in the

Also several bugs were fixed and some minor improvements were brought
into the simplex method routines (for details see the file 'ChangeLog').

Please note that the current version of GLPK is tentative.

See GLPK webpage at .

GLPK distribution can be ftp'ed from  or
from some mirror ftp sites; see .

The md5sum is the following:

b01f6bb2a3da656246d25aa8a712fa02 *glpk-3.2.2.tar.gz/

GLPK is also available as a Debian GNU/Linux package. See the webpage
at .

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis