From da389927ddf9240bbba10b819eb782e80a5d6bf7 Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Tue, 19 Jan 2021 02:25:44 +1100 Subject: Basic HTML documentation added --- doc/features.html | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 doc/features.html (limited to 'doc/features.html') diff --git a/doc/features.html b/doc/features.html new file mode 100644 index 0000000..7ebad19 --- /dev/null +++ b/doc/features.html @@ -0,0 +1,46 @@ + + + + + + + Features - Packrat Docs + + + + + + +

Features

+ + Return to Contents + + +

Lexing and Parsing

+

Combinators are provided to build both lexers and parsers. Lexing is less flexible + as it does not need to incorporate choices, left recursion, or ambiguity.

+ +

Left Recursion

+

Any form of left recursive grammar will be parsed correctly, without infinite loops.

+ +

Ambiguity

+

All possible valid parses of the input by a constructed grammar will be followed + and incorporated into the resulting parse graph.

+ +

Polynomial Complexity

+

As per the paper that this library draws most of its ideas from, the worst case complexity + involved for both time and space should be polynomial. This has been experimentally confirmed + but as of yet no analysis has been done to determine specifics.

+ +

Error Messages

+

If there is a lexer or parser error then a message will be sent with the exception that + records what symbols were expected and where they were expected.

+ +

Piecewise Parsing

+

Both lexers and parsers can have their input fed to them piece by piece instead of all + at once.

+ + + + + -- cgit