Skip to main content

a modern parsing library

Project description

Lark is a modern general-purpose parsing library for Python.

Lark focuses on simplicity and power. It lets you choose between two parsing algorithms:

Earley : Parses all context-free grammars (even ambiguous ones)! It is the default. LALR(1): Only LR grammars. Outperforms PLY and most if not all other pure-python parsing libraries. Both algorithms are written in Python and can be used interchangably with the same grammar (aside for algorithmic restrictions). See “Comparison to other parsers” for more details.

Lark can automagically build an AST from your grammar, without any more code on your part.

Features:

  • EBNF grammar with a little extra

  • Earley & LALR(1)

  • Builds an AST automagically based on the grammar

  • Automatic line & column tracking

  • Automatic token collision resolution (unless both tokens are regexps)

  • Python 2 & 3 compatible

  • Unicode fully supported

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lark-parser-0.2.4.tar.gz (26.5 kB view details)

Uploaded Source

File details

Details for the file lark-parser-0.2.4.tar.gz.

File metadata

  • Download URL: lark-parser-0.2.4.tar.gz
  • Upload date:
  • Size: 26.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for lark-parser-0.2.4.tar.gz
Algorithm Hash digest
SHA256 d2d1e5c56e7c4764761dae36cf4b38dc399ce79d2961db1cff745797992c4b40
MD5 7988d3feaeb5ece3396349a6a1eff4b3
BLAKE2b-256 11c07eaee180680ee716abd28c4d64407e4c6426d8de1b8d2fd646342db44324

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page