Skip to main content

Introduction to Compiler Design

  • Textbook
  • © 2017

Overview

  • Equips readers to write compilers, in different programming languages
  • The material presented has been extensively tested in teaching situations
  • Covers both basic techniques and optimisation, which are illustrated with examples and exercises
  • Includes supplementary material: sn.pub/extras

Part of the book series: Undergraduate Topics in Computer Science (UTICS)

This is a preview of subscription content, log in via an institution to check access.

Access this book

eBook USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

Table of contents (11 chapters)

Keywords

About this book

The second edition of this textbook has been fully revised and adds material about loop optimisation, function call optimisation and dataflow analysis. It presents techniques for making realistic compilers for simple programming languages, using techniques that are close to those used in "real" compilers, albeit in places slightly simplified for presentation purposes.  All phases required for translating a high-level language to symbolic machine language are covered, including lexing, parsing, type checking, intermediate-code generation, machine-code generation, register allocation and optimisation, interpretation is covered briefly.

Aiming to be neutral with respect to implementation languages, algorithms are presented in pseudo-code rather than in any specific programming language, but suggestions are in many cases given for how these can be realised in different language flavours.

Introduction to Compiler Design is intended for an introductory course in compiler design, suitable for both undergraduate and graduate courses depending on which chapters are used.

 

Authors and Affiliations

  • Datalogisk Institut, Københavns Universitet, Copenhagen, Denmark

    Torben Ægidius Mogensen

About the author

The author has taught programming language design, implementation, and transformation at the University of Copenhagen for more than two decades.  

Bibliographic Information

Publish with us