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]

PLY (Python Lex-Yacc)
Original author(s)David M. Beazley
Stable release
3.11
Repository
Written inPython
Websitedabeaz.com/ply/

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: Oh, it has a recycle bin too.
gollark: PotatOS just brings it together into a convenient system.
gollark: I do aim to make potatOS *pretty* modular, so most of it is available elsewhere.
gollark: RightCtrl+S toggles `shell.allow_startup`, which means that if something breaks you can just hit that and fix it.
gollark: Anyway, one thing you *can't* get without potatOS is the convenient keycommands for stuff like disabling running startup.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.