Loading...

Trustworthy Compilers

Share Icon

ISBN: 978-0-470-50095-8

February 2010

320 pages

Description
The Most Complete, Real-World Guide to Compiler Development—and the Principles of Trustworthy Compilers

Drawing on the author's over thirty years of expertise in compiler development, research, and instruction, Trustworthy Compilers introduces and analyzes the concept of trustworthy compilers and the principles of trustworthy compiler development, and provides analytical overview of other promising research works in this area.

Vladimir Safonov shares the benefit of his long experience as a teacher and compiler development professional to explain that—even in such a well-studied area as compilers—there is still an opportunity for original results, efficient algorithms, and promising research and development. Beginning with a definition of the trustworthy compiler and a review of the history of compiler development, Trustworthy Compilers features:

  • A complete overview of all essential compiler topics, including lexical analysis, parsing, semantic analysis, compiler optimization, code generation, and traditional and modern approaches to runtime
  • Efficient, ready-to-apply algorithms for various phases of compilation, especially for semantic analysis, developed by the author and used in his real compilers
  • High-yield coverage of graph compilers—a novel compiler development area—plus related concepts such as graph grammars and graph compilers, and editor development tools such as DiaGen
  • Real projects—using examples of real compilers—that cover the key topics related to compiler development and compiling methods
  • A survey of novel kinds of compilation, including just-in-time (JIT) and ahead-of-time (AOT) compilation, which are characteristic of modern software development platforms Java and .NET
  • Sections on modern compiler tools—such as ANTLR, CoCo/R, and SableCC

Covering both classical techniques and innovative ones not covered by other books, Trustworthy Compilers helps both practicing professionals and students meet the challenge of making compilers more trustworthy. The book's companion Web page (www.vladimirsafonov.org/trustworthycompilers) provides an overview of the book and related resources for compiler teachers and students.

About the Author
VLADIMIR O. SAFONOV is one of the leading specialists in computer science and software engineering in Russia. He is a Professor of Computer Science at St. Petersburg University and the head of the Java Technology Laboratory at the university. In 2000 and 2001, students of his department won the world championship for the ACM programming contest. Professor Safonov holds four U.S. software patents, four Russian software patents, and has published 120 papers and six books. He is the author of Using Aspect-Oriented Programming for Trustworthy Software Development (Wiley). He is the chair of the IEEE Region 8 Russia North-West Computer Society/Technology Management Council Joint Chapter. He was also a Microsoft Research¿2005/2006 RFP winner for TWC and Secure Software Development.