ANNOUNCE (4479:61d3ed46e373) | ANNOUNCE (6498:e21e9ab5fad0) |
---|---|
1February 19, 2007 | 1March 24, 2009 |
2 | 2 |
3 Announcing : PLY-2.3 (Python Lex-Yacc) | 3 Announcing : PLY-3.2 (Python Lex-Yacc) |
4 5 http://www.dabeaz.com/ply 6 7I'm pleased to announce a significant new update to PLY---a 100% Python | 4 5 http://www.dabeaz.com/ply 6 7I'm pleased to announce a significant new update to PLY---a 100% Python |
8implementation of the common parsing tools lex and yacc. PLY-2.3 is 9a minor bug fix release, but also features improved performance. | 8implementation 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. |
10 11If you are new to PLY, here are a few highlights: 12 13- PLY is closely modeled after traditional lex/yacc. If you know how 14 to use these or similar tools in other languages, you will find 15 PLY to be comparable. 16 17- PLY provides very extensive error reporting and diagnostic --- 6 unchanged lines hidden (view full) --- 24 precedence rules, and ambiguous grammars. 25 26- Parsing is based on LR-parsing which is fast, memory efficient, 27 better suited to large grammars, and which has a number of nice 28 properties when dealing with syntax errors and other parsing 29 problems. Currently, PLY can build its parsing tables using 30 either SLR or LALR(1) algorithms. 31 | 11 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 --- 6 unchanged lines hidden (view full) --- 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 |
32- PLY can be used to build parsers for large programming languages. 33 Although it is not ultra-fast due to its Python implementation, 34 PLY can be used to parse grammars consisting of several hundred 35 rules (as might be found for a language like C). The lexer and LR 36 parser are also reasonably efficient when parsing normal 37 sized programs. 38 | |
39More information about PLY can be obtained on the PLY webpage at: 40 41 http://www.dabeaz.com/ply 42 | 33More information about PLY can be obtained on the PLY webpage at: 34 35 http://www.dabeaz.com/ply 36 |
43PLY is freely available and is licensed under the terms of the Lesser 44GNU Public License (LGPL). | 37PLY is freely available. |
45 46Cheers, 47 48David Beazley (http://www.dabeaz.com) | 38 39Cheers, 40 41David Beazley (http://www.dabeaz.com) |