Просмотр исходного кода

Added a short README file

tags/gm/2021-09-23T00Z/github.com--lark-parser-lark/0.5.1
Erez Shinan 7 лет назад
Родитель
Сommit
cf8c455cdf
1 измененных файлов: 38 добавлений и 0 удалений
  1. +38
    -0
      README.md

+ 38
- 0
README.md Просмотреть файл

@@ -0,0 +1,38 @@
# Lark - a modern pure-Python parsing library

Lark is a modern general-purpose Python parsing library, that focuses on simplicity and power.

Lark accepts grammars as EBNF and lets you choose between two parsing algorithms:

- Earley : Parses all context-free grammars (even ambiguous ones)!
- LALR(1): Only LR grammars. Outperforms PLY and most if not all other pure-python parsing libraries.

Both algorithms are pure-python implementations and can be used interchangably (aside for algorithmic restrictions).

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


## Lark does things a little differently

1. *Separates code from grammar*: The result is parsers that are cleaner and easier to read & work with.

2. *Automatically builds a tree (AST)*: Trees are always simpler to work with than state-machines. (But if you want to provide a callback for efficiency reasons, Lark lets you do that too)

3. *Follows Python's Idioms*: Beautiful is better than ugly. Readability counts.


## Features

- EBNF grammar with a little extra
- Earley & LALR(1)
- Builds an AST automagically based on the grammar
- Python 2 & 3 compatible
- Supports unicode

## License

Lark uses the GPL3 license.

## Contact

If you have any questions or want to contribute, please email me at erezshin at gmail com.

Загрузка…
Отмена
Сохранить