Frequently Asked Questions
Below are questions we have been asked frequently about the book.
If your question isn't answered here, please ask!
- How does this book differ from the earlier books authored only by Fischer and LeBlanc?
While we have kept the title and the undergraduate focus of the earlier books, this book
is a complete revision of the original text:
are presented in a pseudocode style that should be familiar
to students who have studied the fundamental algorithms of our discipline. Pseudocode
enables a concise formulation of an algorithm and a rational discussion of the
algorithm's purpose and construction.
The details of implementation in a particular
language have been relegated to this web site.
- Parsing theory and practice are organized to facilitate a variety of
Some may study the material at a high level to gain a broad
view of top-down and bottom-up parsing. Others may study a particular approach
in greater detail.
- The front- and back-end phases of a compiler are connected by
the Abstract Syntax Tree (AST), which is created as the primary artifact of parsing.
Most compilers build an AST, but relatively few texts articulate its
construction and use.
The visitor pattern is introduced for traversing the AST
during semantic analysis and code generation.
- Laboratory and studio exercises are available to instructors via this web site.
Instructors can assign some components as exercises for the students while
other components are supplied from our course-support Web site.