41 lines
No EOL
1.5 KiB
Text
41 lines
No EOL
1.5 KiB
Text
March 24, 2009
|
|
|
|
Announcing : PLY-3.2 (Python Lex-Yacc)
|
|
|
|
http://www.dabeaz.com/ply
|
|
|
|
I'm pleased to announce a significant new update to PLY---a 100% Python
|
|
implementation of the common parsing tools lex and yacc. PLY-3.2 adds
|
|
compatibility for Python 2.6 and 3.0, provides some new customization
|
|
options, and cleans up a lot of internal implementation details.
|
|
|
|
If you are new to PLY, here are a few highlights:
|
|
|
|
- PLY is closely modeled after traditional lex/yacc. If you know how
|
|
to use these or similar tools in other languages, you will find
|
|
PLY to be comparable.
|
|
|
|
- PLY provides very extensive error reporting and diagnostic
|
|
information to assist in parser construction. The original
|
|
implementation was developed for instructional purposes. As
|
|
a result, the system tries to identify the most common types
|
|
of errors made by novice users.
|
|
|
|
- PLY provides full support for empty productions, error recovery,
|
|
precedence rules, and ambiguous grammars.
|
|
|
|
- Parsing is based on LR-parsing which is fast, memory efficient,
|
|
better suited to large grammars, and which has a number of nice
|
|
properties when dealing with syntax errors and other parsing
|
|
problems. Currently, PLY can build its parsing tables using
|
|
either SLR or LALR(1) algorithms.
|
|
|
|
More information about PLY can be obtained on the PLY webpage at:
|
|
|
|
http://www.dabeaz.com/ply
|
|
|
|
PLY is freely available.
|
|
|
|
Cheers,
|
|
|
|
David Beazley (http://www.dabeaz.com) |