PLY (Python Lex-Yacc)
PLY is a parsing tool written purely in Python. It is, in essence, a re-implementation of Lex and Yacc originally in C-language. It was written by David M. Beazley. PLY uses the same LALR parsing technique as Lex and Yacc. It also has extensive debugging and error reporting facilities.[1]
Original author(s) | David M. Beazley |
---|---|
Stable release | 3.11
|
Repository | |
Written in | Python |
Website | dabeaz |
Features
Implemented in Python, it has almost all the features provided by Lex and Yacc. It includes support for empty productions, precedence rules, error recovery, and ambiguous grammars. It supports Python 3.
Structure of a PLY file
PLY has the following two Python modules which are part of the ply package.[2]
- ply.lex - A re-implementation of Lex for lexical analysis
- ply.yacc - A re-implementation of Yacc for parser creation
gollark: People *sometimes* donate to charity, but rarely.
gollark: Not in significant amounts. And mostly not effective charities.
gollark: Yes, people are often really bad at interacting civilly with people who disagree with them.
gollark: They're with DS now, they can't respond to you.
gollark: One alternative interpretation I read somewhere was coordination problems - people don't do much because they feel like it won't be useful unless other people also do.
References
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.