Python parser generators

François Pinard pinard at iro.umontreal.ca
Fri Nov 28 12:24:02 EST 2003


[anton muhin]

> Can someone give an overview of existing Python parser generators?
> [...] I'm rather looking for convenience and expressiveness.

Hello, Anton.

I looked at a few, but did not look at them all, and finally settled for
SPARK for production.  (I do not fully understand why a few generators
which were written after SPARK did not at least recycle its elegance.)

SPARK is not blazing fast, but is not inordinately slow either, _given_
you write reasonable grammars.  By "reasonable", I do not mean small,
we indeed use some rather big ones here.  But I mean grammars which are
rather left-to-right-ly, and for which big inputs could be chumped into
smaller syntactical units at lexical time.  In that way, each of the
repeated call to a SPARK parser in an application is not given the whole
input -- we found out that this is worth, and usually easy to do.  Our
parsers are easy to maintain and very dependable.  We are happy with it.

-- 
François Pinard   http://www.iro.umontreal.ca/~pinard





More information about the Python-list mailing list