Limit search to available items
Book Cover
E-book
Author Crespi-Reghizzi, Stefano, author.

Title Formal languages and compilation / Stefano Crespi Reghizzi, Luca Breveglieri, Angelo Morzenti
Edition Third edition
Published Cham, Switzerland : Springer, 2019

Copies

Description 1 online resource (xiii, 499 pages) : illustrations
Series Texts in computer science, 1868-0941
Texts in computer science, 1868-0941
Contents 1. Introduction: Intended scope and readership ; Compiler parts and corresponding concepts -- 2. Syntax: Introduction ; Formal language theory ; Regular expressions and languages ; Linguistic abstraction : abstract and concrete lists ; Context-free generative grammars ; Grammars of regular languages ; Comparison of regular and context free languages ; More general grammars and language families -- 3. Finite automata as regular language recognizers: Introduction ; Recognition algorithms and automata ; Introduction to finite automata ; Deterministic finite automata ; Nondeterministic automata ; From automation to regular expression: BMC method ; Elimination of nondeterminism ; From regular expression to recognizer ; String matching of ambiguous regular expressions ; Expressions with complement and intersection ; Summary of relations between regular expressions, grammars and automata -- 4. Pushdown automata and parsing: Introduction ; Pushdown automation ; Deterministic pushdown automata and languages ; Syntax analysis: top-down and bottom-up constructions ; Grammar as network of finite automata ; Bottom-up deterministic analysis ; Deterministic top-down parsing ; Operator-precedence grammars and parallel parsing ; Deterministic language families: a comparison ; Discussion of parsing methods ; A general parsing algorithm ; Managing syntactic errors and changes -- 5. Translation semantics and static analysis: Introduction ; Translation relation and function ; Transliteration ; Purely syntactic translation ; Regular translation ; Semantic translation ; Static program analysis
Summary This classroom-tested and clearly-written textbook presents a focused guide to the conceptual foundations of compilation, explaining the fundamental principles and algorithms used for defining the syntax of languages, and for implementing simple translators. This significantly updated and expanded third edition has been enhanced with additional coverage of regular expressions, visibly pushdown languages, bottom-up and top-down deterministic parsing algorithms, and new grammar models. Topics and features: Describes the principles and methods used in designing syntax-directed applications such as parsing and regular expression matching; Covers translations, semantic functions (attribute grammars), and static program analysis by data flow equations; Introduces an efficient method for string matching and parsing suitable for ambiguous regular expressions (NEW); Presents a focus on extended BNF grammars with their general parser and with LR(1) and LL(1) parsers (NEW); Introduces a parallel parsing algorithm that exploits multiple processing threads to speed up syntax analysis of large files Discusses recent formal models of input-driven automata and languages (NEW); Includes extensive use of theoretical models of automata, transducers and formal grammars, and describes all algorithms in pseudocode; Contains numerous illustrative examples, and supplies a large set of exercises with solutions at an associated website. -- Provided by publisher
Bibliography Includes bibliographical references and index
Notes Online resource; title from PDF title page (SpringerLink, viewed May 2, 2019)
Subject Formal languages.
Compiling (Electronic computers)
Compiling (Electronic computers)
Formal languages
Form Electronic book
Author Breveglieri, Luca, author.
Morzenti, Angelo, author.
ISBN 9783030048792
3030048799
9783030048808
3030048802