Writing Compilers and Interpreters: A Software Engineering Approach

Writing Compilers and Interpreters: A Software Engineering Approach


By (author) Ronald Mak

List price $85.77
You save $25.96 30% off

Free delivery worldwide
Dispatched in 3 business days
When will my order arrive?

  • Publisher: John Wiley & Sons Ltd
  • Format: Paperback | 864 pages
  • Dimensions: 188mm x 231mm x 53mm | 1,247g
  • Publication date: 9 October 2009
  • Publication City/Country: Chichester
  • ISBN 10: 0470177071
  • ISBN 13: 9780470177075
  • Edition: 3, Revised
  • Edition statement: 3rd Revised edition
  • Sales rank: 435,745

Product description

Long-awaited revision to a unique guide that covers both compilers and interpreters Revised, updated, and now focusing on Java instead of C++, this long-awaited, latest edition of this popular book teaches programmers and software engineering students how to write compilers and interpreters using Java. You'll write compilers and interpreters as case studies, generating general assembly code for a Java Virtual Machine that takes advantage of the Java Collections Framework to shorten and simplify the code. In addition, coverage includes Java Collections Framework, UML modeling, object-oriented programming with design patterns, working with XML intermediate code, and more.

Other books in this category

Showing items 1 to 10 of 10

Author information

Ronald Mak wrote the earlier editions of this very successful book as well as The Martian Principles for Successful Enterprise Systems: 20 Lessons Learned from NASA's Mars Exploration Rover Mission (also published by Wiley). He is also the author of Java Number Cruncher: The Java Programmer's Guide to Numerical Computing . He develops advanced software systems for organizations from startups to NASA. Currently a research staff member at the IBM Almaden Research Center, he also teaches compiler writing and software engineering at San Jose State University.

Back cover copy

Master the skills you need to build your own compilers and interpreters Compilers and interpreters are very difficult programs to write, but modern software engineering tackles the complexity. Design patterns and other object-oriented programming techniques guide you to develop well-structured code in incremental, understandable steps. Apply what you learn in this book to succeed with any complex software project. You'll learn to: Use Java to develop scanners and parsers for programming languages Employ UML to model software components Manage symbol tables with the Java Collections Framework Use XML to represent the generated intermediate code Develop an interpreter to execute programs, including a powerful interactive source-level debugger Implement an integrated development environment (IDE) that animates the execution of programs Use the IDE's graphical user interface to set breakpoints and single-step programs statement by statement with mouse clicks Develop a code generator that emits object code for the Java Virtual Machine (JVM), and run the compiled code on multiple platforms

Table of contents

Introduction. Chapter 1 Introduction. Chapter 2 Framework I: Compiler and Interpreter. Chapter 3 Scanning. Chapter 4 The Symbol Table. Chapter 5 Parsing Expressions and Assignment Statements. Chapter 6 Interpreting Expressions and Assignment Statements. Chapter 7 Parsing Control Statements. Chapter 8 Interpreting Control Statements. Chapter 9 Parsing Declarations. Chapter 10 Type Checking. Chapter 11 Parsing Programs, Procedures, and Functions. Chapter 12 Interpreting Pascal Programs. Chapter 13 An Interactive Source-Level Debugger. Chapter 14 Framework II: An Integrated Development Environment (IDE). Chapter 15 Jasmin Assembly Language and Code Generation for the Java Virtual Machine. Chapter 16 Compiling Programs, Assignment Statements, and Expressions. Chapter 17 Compiling Procedure and Function Calls and String Operations. Chapter 18 Compiling Control Statements, Arrays, and Records. Chapter 19 Additional Topics. Index.