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
- EBNF grammar
- Unicode fully supported
- Python 2 & 3 compatible
- Automatic line & column tracking
- Standard library of terminals (strings, numbers, names, etc.)
- Import grammars from Nearley.js
- Extensive test suite
- And much more!
Raw data
{
"_id": null,
"home_page": "https://github.com/lark-parser/lark",
"name": "lark-parser",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "Earley LALR parser parsing ast",
"author": "Erez Shinan",
"author_email": "erezshin@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/5a/ee/fd1192d7724419ddfe15b6f17d1c8742800d4de917c0adac3b6aaf22e921/lark-parser-0.12.0.tar.gz",
"platform": "",
"description": "\nLark is a modern general-purpose parsing library for Python.\n\nWith Lark, you can parse any context-free grammar, efficiently, with very little code.\n\nMain Features:\n - Builds a parse-tree (AST) automagically, based on the structure of the grammar\n - Earley parser\n - Can parse all context-free grammars\n - Full support for ambiguous grammars\n - LALR(1) parser\n - Fast and light, competitive with PLY\n - Can generate a stand-alone parser\n - CYK parser, for highly ambiguous grammars\n - EBNF grammar\n - Unicode fully supported\n - Python 2 & 3 compatible\n - Automatic line & column tracking\n - Standard library of terminals (strings, numbers, names, etc.)\n - Import grammars from Nearley.js\n - Extensive test suite\n - And much more!\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "a modern parsing library",
"version": "0.12.0",
"project_urls": {
"Download": "https://github.com/lark-parser/lark/tarball/master",
"Homepage": "https://github.com/lark-parser/lark"
},
"split_keywords": [
"earley",
"lalr",
"parser",
"parsing",
"ast"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "760090f05db333fe1aa6b6ffea83a35425b7d53ea95c8bba0b1597f226cf1d5f",
"md5": "9bbb87136ab029912e93b636e9b2691e",
"sha256": "0eaf30cb5ba787fe404d73a7d6e61df97b21d5a63ac26c5008c78a494373c675"
},
"downloads": -1,
"filename": "lark_parser-0.12.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "9bbb87136ab029912e93b636e9b2691e",
"packagetype": "bdist_wheel",
"python_version": "3.8",
"requires_python": null,
"size": 103498,
"upload_time": "2021-08-30T13:01:01",
"upload_time_iso_8601": "2021-08-30T13:01:01.603293Z",
"url": "https://files.pythonhosted.org/packages/76/00/90f05db333fe1aa6b6ffea83a35425b7d53ea95c8bba0b1597f226cf1d5f/lark_parser-0.12.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5aeefd1192d7724419ddfe15b6f17d1c8742800d4de917c0adac3b6aaf22e921",
"md5": "422882c3cb61657d8c64738a2a886c3d",
"sha256": "15967db1f1214013dca65b1180745047b9be457d73da224fcda3d9dd4e96a138"
},
"downloads": -1,
"filename": "lark-parser-0.12.0.tar.gz",
"has_sig": false,
"md5_digest": "422882c3cb61657d8c64738a2a886c3d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 235029,
"upload_time": "2021-08-30T09:14:44",
"upload_time_iso_8601": "2021-08-30T09:14:44.484759Z",
"url": "https://files.pythonhosted.org/packages/5a/ee/fd1192d7724419ddfe15b6f17d1c8742800d4de917c0adac3b6aaf22e921/lark-parser-0.12.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2021-08-30 09:14:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lark-parser",
"github_project": "lark",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "lark-parser"
}