1. A portable and efficient LALR(1) parser generator for Scheme -- Description

1.1 Introduction

This file contains yet another LALR(1) parser generator written in Scheme. In contrast to other such parser generators, this one implements a more efficient algorithm for computing the lookahead sets. The algorithm is the same as used in Bison (GNU yacc) and is described in the following paper:

Efficient Computation of LALR(1) Look-Ahead Set, F. DeRemer and T. Pennello, TOPLAS, vol. 4, no. 4, october 1982.

As a consequence, it is not written in a fully functional style. In fact, much of the code is a direct translation from C to Scheme of the Bison sources.


1.2 New features

The latest release is: 2.1.2.

The new features are:

  • Better support for interactive parsers (no lookahead needed when the default action is to reduce).
  • Simple error recovery à la Yacc (error productions).
  • Parsers can be saved in files (output: option).
  • The parsing tables can be output in a human-readable format (out-table: option).
  • Suppression of conflicts warnings (expect: option).

Send questions, comments or suggestions to Dominique Boucher.


1.3 Acknowledgments

I would like to thank the following people for their contributions to this software:

  • Scott G. Miller for the port to SISC.
  • Rouben Rostamian for testing the port to Guile.
  • Felix L. Winkelmann for the port to Chicken.
  • Erick Gallesio for the port to STklos.
  • Florian Loitsch for a few bug reports.


1.4 Redistribution

lalr-scm is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

lalr-scm is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with lalr-scm; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.



This Html page has been produced by Skribe.
Last update Sun Dec 3 20:16:43 2006.