blob: 0a155cec3fae0230f19d882c1cc554b95e746bf1 [file] [log] [blame]
Nathan Binkerte1270f82009-08-16 13:39:58 -07001March 24, 2009
Nathan Binkert44ebb8d2007-05-24 21:54:51 -07002
Nathan Binkerte1270f82009-08-16 13:39:58 -07003 Announcing : PLY-3.2 (Python Lex-Yacc)
Nathan Binkert44ebb8d2007-05-24 21:54:51 -07004
5 http://www.dabeaz.com/ply
6
7I'm pleased to announce a significant new update to PLY---a 100% Python
Nathan Binkerte1270f82009-08-16 13:39:58 -07008implementation of the common parsing tools lex and yacc. PLY-3.2 adds
9compatibility for Python 2.6 and 3.0, provides some new customization
10options, and cleans up a lot of internal implementation details.
Nathan Binkert44ebb8d2007-05-24 21:54:51 -070011
12If you are new to PLY, here are a few highlights:
13
14- PLY is closely modeled after traditional lex/yacc. If you know how
15 to use these or similar tools in other languages, you will find
16 PLY to be comparable.
17
18- PLY provides very extensive error reporting and diagnostic
19 information to assist in parser construction. The original
20 implementation was developed for instructional purposes. As
21 a result, the system tries to identify the most common types
22 of errors made by novice users.
23
24- PLY provides full support for empty productions, error recovery,
25 precedence rules, and ambiguous grammars.
26
27- Parsing is based on LR-parsing which is fast, memory efficient,
28 better suited to large grammars, and which has a number of nice
29 properties when dealing with syntax errors and other parsing
30 problems. Currently, PLY can build its parsing tables using
31 either SLR or LALR(1) algorithms.
32
Nathan Binkert44ebb8d2007-05-24 21:54:51 -070033More information about PLY can be obtained on the PLY webpage at:
34
35 http://www.dabeaz.com/ply
36
Nathan Binkerte1270f82009-08-16 13:39:58 -070037PLY is freely available.
Nathan Binkert44ebb8d2007-05-24 21:54:51 -070038
39Cheers,
40
41David Beazley (http://www.dabeaz.com)