Compiler Design

Syntactic and Semantic Analysis

  • Reinhard Wilhelm
  • Helmut Seidl
  • Sebastian Hack

Table of contents

  1. Front Matter
    Pages i-x
  2. Reinhard Wilhelm, Helmut Seidl, Sebastian Hack
    Pages 1-10
  3. Reinhard Wilhelm, Helmut Seidl, Sebastian Hack
    Pages 11-41
  4. Reinhard Wilhelm, Helmut Seidl, Sebastian Hack
    Pages 43-137
  5. Reinhard Wilhelm, Helmut Seidl, Sebastian Hack
    Pages 139-216
  6. Back Matter
    Pages 217-225

About this book

Introduction

While compilers for high-level programming languages are large complex software systems, they have particular characteristics that differentiate them from other software systems. Their functionality is almost completely well-defined – ideally there exist complete precise descriptions of the source and target languages. Additional descriptions of the interfaces to the operating system, programming system and programming environment, and to other compilers and libraries are often available.

This book deals with the analysis phase of translators for programming languages. It describes lexical, syntactic and semantic analysis, specification mechanisms for these tasks from the theory of formal languages, and methods for automatic generation based on the theory of automata. The authors present a conceptual translation structure, i.e., a division into a set of modules, which transform an input program into a sequence of steps in a machine program, and they then describe the interfaces between the modules. Finally, the structures of real translators are outlined. The book contains the necessary theory and advice for implementation.

This book is intended for students of computer science. The book is supported throughout with examples, exercises and program fragments.

 

 

Keywords

Compilers Functional programming High-level programming Imperative programming Interpreters Logic programming Machine architectures Object-oriented programming Programming Virtual machines

Authors and affiliations

  • Reinhard Wilhelm
    • 1
  • Helmut Seidl
    • 2
  • Sebastian Hack
    • 3
  1. 1.FB InformatikUniversität des SaarlandesSaarbrückenGermany
  2. 2.Fakultät für InformatikTechnische Universität MünchenGarchingGermany
  3. 3.FB InformatikUniversität des SaarlandesSaarbrückenGermany

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-642-17540-4
  • Copyright Information Springer-Verlag Berlin Heidelberg 2013
  • Publisher Name Springer, Berlin, Heidelberg
  • eBook Packages Computer Science
  • Print ISBN 978-3-642-17539-8
  • Online ISBN 978-3-642-17540-4
  • About this book