SPARK 0.7 pre-release 3

John Aycock aycock@cpsc.ucalgary.ca
Fri, 14 Sep 2001 14:02:33 -0600


A pre-release of SPARK: the Scanning, Parsing, And Rewriting Kit is
available for testing.  At this time, I'm only distributing a new
spark.py; I'm particularly interested in hearing from existing SPARK
users -- there's been some major code changes, and I want to make sure
I didn't break anything.

SPARK features a collection of classes which can be used to implement           little languages.  It includes classes for scanning, parsing, AST
construction, AST traversal, and tree pattern matching.

The major change is that the parser runs up to twice as fast as it did
in SPARK 0.6.1.  The full changelog is below.

Please note that the web site has moved, and my email address has
changed.  The new web site for SPARK is

	http://www.cpsc.ucalgary.ca/~aycock/spark

John

--
CHANGES FROM 0.7pre2 -> 0.7pre3:

	-  GenericParser has an experimental mechanism for pickling a parser,
		forcing all precomputation to be performed.  The result runs
		twice as fast as 0.6.1.

CHANGES FROM 0.6.1 -> 0.7pre2:

	-  GenericScanner's constructor now accepts an optional parameter
		to pass in additional flags to re.compile (in addition to
		re.VERBOSE).
	-  GenericScanner's default pattern now raises an exception rather
		than silently swallowing input, at the request of several
		users.
	-  GenericParser has had a complete rewrite, fixing a number of
		obscure bugs.  It uses a "new" algorithm (in some sense)
		that runs about 30% faster than 0.6.1.