Parsing Techniques [electronic resource] : A Practical Guide /
Grune, Dick.author.
Jacobs, Ceriel J.H.author.
Parsing, also referred to as syntax analysis, has been and continues to be an essential part of computer science and linguistics. Today, parsing is also applied in other disciplines; some examples are document preparation and conversion, chemical formulae typesetting, and chromosome recognition. In addition to the traditional parsing techniques, this second edition presents new developments and discoveries: generalized deterministic parsing, linear-time substring parsing, parallel parsing, parsing as intersection, non-canonical methods, non-Chomsky systems, and many more. Parsing techniques provide a solid basis for compiler construction and linguistics, and contribute to all existing software: they enable Web browsers to analyze HTML pages and PostScript printers to analyze PostScript, and some of the more advanced techniques are used in code generation in compilers and in data compression. Also their importance as general pattern recognizers is slowly being acknowledged. To provide readers with low-threshold access to the full field of parsing techniques, this book uses a two-tiered structure. The basic ideas behind the existing parsing techniques are explained in an intuitive and narrative style, starting from the first principles of data structures and algorithms; this provides breadth and accessibility. The hundreds of realizations and improvements of these basic ideas are explained in an extensive annotated bibliography, in a much terser, yet still informal style; this provides depth. The reader should have an understanding of algorithmic thinking, especially recursion; however, knowledge of any particular programming language is not required.
Description based upon print version of record.
Includes bibliographical references and indexes.
Grammars as a Generating Device -- to Parsing -- General Non-Directional Parsing -- Regular Grammars and Finite-State Automata -- General Directional Top-Down Parsing -- General Directional Bottom-Up Parsing -- Deterministic Top-Down Parsing -- Deterministic Bottom-Up Parsing -- Non-Canonical Parsers -- Generalized Deterministic Parsers -- Substring Parsing -- Parsing as Intersection -- Parallel Parsing -- Non-Chomsky Grammars and Their Parsers -- Error Handling -- Practical Parser Writing and Usage -- Annotated Bibliography.
Parsing, also referred to as syntax analysis, has been and continues to be an essential part of computer science and linguistics. Today, parsing is also applied in other disciplines; some examples are document preparation and conversion, chemical formulae typesetting, and chromosome recognition. In addition to the traditional parsing techniques, this second edition presents new developments and discoveries: generalized deterministic parsing, linear-time substring parsing, parallel parsing, parsing as intersection, non-canonical methods, non-Chomsky systems, and many more. Parsing techniques provide a solid basis for compiler construction and linguistics, and contribute to all existing software: they enable Web browsers to analyze HTML pages and PostScript printers to analyze PostScript, and some of the more advanced techniques are used in code generation in compilers and in data compression. Also their importance as general pattern recognizers is slowly being acknowledged. To provide readers with low-threshold access to the full field of parsing techniques, this book uses a two-tiered structure. The basic ideas behind the existing parsing techniques are explained in an intuitive and narrative style, starting from the first principles of data structures and algorithms; this provides breadth and accessibility. The hundreds of realizations and improvements of these basic ideas are explained in an extensive annotated bibliography, in a much terser, yet still informal style; this provides depth. The reader should have an understanding of algorithmic thinking, especially recursion; however, knowledge of any particular programming language is not required.
Software engineering.
Natural language processing (Computer science).
Computer programming.
Programming languages (Electronic computers).
Software Engineering/Programming and Operating Systems.
Natural Language Processing (NLP).
Programming Techniques.
Programming Languages, Compilers, Interpreters.
Natural Language Processing (NLP).