lark icon indicating copy to clipboard operation
lark copied to clipboard

Lark is a parsing toolkit for Python, built with a focus on ergonomics, performance and modularity.

Results 147 lark issues
Sort by recently updated
recently updated
newest added

I've create a grammar file off from the Hive CREATE syntax: https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-CreateTable It's ambiguous and uses some number of terminals, but loading takes too much time and the serialized parser...

bug

Rule templates are already here. Token templates are next? @MegaIng Do you think this will be ready in the near future? I want to make a release in a few...

enhancement

Greetings, and thank you for your excellent package. I'm not sure if I'm doing something wrong here, but the following CFG gives me an unambiguous parse on the input "a...

bug

Not likely to happen naturally, but possible. For example: parser = lark.Lark("start: a\na: b\n b:c\n c:a\n | /a/") parser.parse('a') Throws all parsers into an infinite loop (the cyk parser already...

bug

When using a standard or contextual lexer, colliding regular expressions may produce an incorrect parser, that only produces an error when encountering the obscured terminal in the input text. For...

enhancement
help wanted

Hi, I noticed that there's an implementation of Joop Leo's optimisation for right recursion, but it is commented [out](https://github.com/lark-parser/lark/blob/f814d91f9dc0d9989a9ef413cca0f2622427eb74/lark/parsers/earley.py#L81). I'm fairly new to the concept of this algorithm so I'm...

enhancement

[RFC 5234](https://tools.ietf.org/html/rfc5234) describes the standard grammar format for internet standards, such as the notoriously-hard-to-validate email addresses. Because this standard is a dialect of EBNF and does not allow for embedded...

enhancement

It seems I have some real bad problems with my tentative implementation. Launching the program several times I end up with (at least) two different outputs, even if I'm parsing...

bug

```python >>> Lark('start: A\n A: "a"+', ambiguity='explicit', lexer='dynamic_complete').parse('aa') Tree(start, [Token(A, 'aa')]) ``` Expected: ambiguous node containing ['aa'] and ['a', 'a']

bug

It's possible to improve Lark's speed, for all algorithms, by performing grammar simplification. Specifically, it's possible to merge adjacent anonymous terminals together, to reduce the parser work load, without affecting...

enhancement