a modern parsing library
Lark is a modern general-purpose parsing library for Python.
With Lark, you can parse any context-free grammar, efficiently, with very little code.
- Main Features:
Builds a parse-tree (AST) automagically, based on the structure of the grammar
- Earley parser
Can parse all context-free grammars
Full support for ambiguous grammars
- LALR(1) parser
Fast and light, competitive with PLY
Can generate a stand-alone parser
CYK parser, for highly ambiguous grammars
Unicode fully supported
Automatic line & column tracking
Standard library of terminals (strings, numbers, names, etc.)
Import grammars from Nearley.js
Extensive test suite
And much more!
Since version 1.0, only Python versions 3.6 and up are supported.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.