diff --git a/reference/parle/book.xml b/reference/parle/book.xml index d99c700a4d..302a919412 100644 --- a/reference/parle/book.xml +++ b/reference/parle/book.xml @@ -14,7 +14,7 @@ The use case for parle is, when a data format is too complex to be handled by the regex matching with PCRE. The practical application is wide - starting with things like complex CSV data, processing custom data formats and beyond. The helper methods such as Parle\Lexer::dump to inspect the generated state machine, or Parle\Parser::dump to inspect the generated grammar, are useful. The method Parle\Parser::trace can also be used to track the parsing operation. - Lexer analysis is a process of splitting a character sequence into a list of lexemes. The lexeme list can be then used for the syntax analysis against a formal grammar. These operations are also known as lexing and parsing. This documentation doesn't aim to provide an exhaustive information on lexing and parsing. The basics can be found on the numerous resources on the net. Several usage examples are included, to show the functionality. The extension is also useful for PHP programmers willing to learn parsing and lexing. + Lexer analysis is a process of splitting a character sequence into a list of lexemes. The lexeme list can be then used for the syntax analysis against a formal grammar. These operations are also known as lexing and parsing. This documentation doesn't aim to provide an exhaustive information on lexing and parsing. The basics can be found on the numerous resources on the net. Several usage examples are included, to show the functionality. The extension is also useful for PHP programmers willing to utilize parsing and lexing, while not having to implement own state machine and grammar handling, as this complex tasks are taken away by parle. The approach of the underlaying libraries used in parle is in most cases compatible to Flex, Bison and other similar tools. The substantial difference from the aforementioned tools is, that lexers and parsers are produced at the runtime and can be used immediately. Thanks to the underlying libraries, the underlaying work is still done by the parle extension, thus allowing for good efficiency. When the case complexity is irreducible with PCRE, parle sure comes into the game to handle sophisticated data structures. Nevertheless, in many cases there can be also a win for the cases even with the smaller complexity in terms or memory usage and maintainability.