guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ANN: Guile-Reader 0.3, A Reader Framework for Guile


From: Ludovic Courtès
Subject: ANN: Guile-Reader 0.3, A Reader Framework for Guile
Date: Sat, 24 Feb 2007 12:02:05 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux)

Hello,

Version 0.3 of Guile-Reader for Guile 1.8.x is now available:

The SHA1 sums for these two files are:

  5770945a8e560b1d670115c1377de8a05fd2baaf  guile-reader-0.3.tar.gz
  9cd3aca8e1f102324f7c8c2c2e4b0f3fc9d3a62c  guile-reader-0.3.tar.gz.sig

Documentation is available at:

  http://www.nongnu.org/guile-reader/

Guile-Reader is a reader creation framework for Guile.  It can be
thought of as an alternative to Guile's built-in reader.  The purpose of
Guile-Reader is to allow for the creation of readers for different
variants of the Scheme/Lisp syntax.  Its design allows the re-use and
composition of various parts of a lexer called "token readers".  It
comes with a library of re-usable token readers that can be used to
build a Scheme reader with various extensions.  For instance, syntax
extensions for DSSSL keywords, SRFI-30 block comments, SRFI-62 S-exp
comments and R6RS square-bracket S-exps are provided and readily usable
through the `make-alternate-guile-reader' procedure.

Additionally, Guile-Reader aims to improve on Guile's reader sub-system
by allowing for the coexistence of several, potentially incompatible,
readers within a single Guile program.  In particular, it provides a
"confinement" mechanism that confines changes made via `read-set!' and
`read-hash-extend' to the calling module.

Although more flexible, Guile-Reader is between 5 and 10 times faster
than Guile's built-in `read' (see the file `tests/benchmark.scm').


New in Guile-Reader 0.3:

  * Various performance improvements (e.g., `make-reader' can now
    produce an inline version of `scm_getc ()', provided token readers
    allocate less memory from the heap).

  * Improved test suite and documentation.

  * Bug fixes.


Ludovic.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]