Formal Languages and Compilation

  • Stefano Crespi Reghizzi
  • Luca Breveglieri
  • Angelo Morzenti

Part of the Texts in Computer Science book series (TCS)

Table of contents

  1. Front Matter
    Pages I-XII
  2. Stefano Crespi Reghizzi, Luca Breveglieri, Angelo Morzenti
    Pages 1-3
  3. Stefano Crespi Reghizzi, Luca Breveglieri, Angelo Morzenti
    Pages 5-90
  4. Stefano Crespi Reghizzi, Luca Breveglieri, Angelo Morzenti
    Pages 91-140
  5. Stefano Crespi Reghizzi, Luca Breveglieri, Angelo Morzenti
    Pages 141-291
  6. Stefano Crespi Reghizzi, Luca Breveglieri, Angelo Morzenti
    Pages 293-387
  7. Back Matter
    Pages 389-399

About this book

Introduction

This fully revised and expanded new edition elucidates the elegance and simplicity of the fundamental theory underlying Formal Languages and Compilation.

Retaining the reader-friendly, minimalist style of the first edition, this uniquely versatile textbook describes the essential principles and methods used for defining the syntax of artificial languages, and for designing efficient parsing algorithms and syntax-directed translators with semantic attributes. A comprehensive selection of topics is presented within a rigorous, unified framework, illustrated by numerous practical examples.

Features and topics:

  • Presents a novel conceptual approach to parsing algorithms that applies to extended BNF grammars, together with a parallel parsing algorithm (NEW)
  • Supplies supplementary teaching tools, including course slides and exercises with solutions, at an associated website
  • Unifies the concepts and notations used in different approaches, enabling an extended coverage of methods with a reduced number of definitions
  • Systematically discusses ambiguous forms, allowing readers to avoid pitfalls when designing grammars
  • Describes all algorithms in pseudocode, so that detailed knowledge of a specific programming language is not necessary
  • Makes extensive usage of theoretical models of automata, transducers and formal grammars
  • Includes concise coverage of algorithms for processing regular expressions and finite automata
  • Introduces static program analysis based on flow equations

This clearly-written, classroom-tested textbook is an ideal guide to the fundamentals of this field for advanced undergraduate and graduate students in computer science and computer engineering. Some background in programming is required, and readers should also be familiar with basic set theory, algebra and logic.

Authors and affiliations

  • Stefano Crespi Reghizzi
    • 1
  • Luca Breveglieri
    • 2
  • Angelo Morzenti
    • 3
  1. 1.Diparimento Elettronica e InformazionePolitecnico di MilanoMilanoItaly
  2. 2.Dipartimento Elettronica e InformazionePolitecnico di MilanoMilanoItaly
  3. 3.Dipartimento Elettronica e InformazionePolitecnico di MilanoMilanoItaly

Bibliographic information

  • DOI https://doi.org/10.1007/978-1-4471-5514-0
  • Copyright Information Springer-Verlag London 2013
  • Publisher Name Springer, London
  • eBook Packages Computer Science
  • Print ISBN 978-1-4471-5513-3
  • Online ISBN 978-1-4471-5514-0
  • Series Print ISSN 1868-0941
  • Series Online ISSN 1868-095X
  • About this book