ISBN/ISSN: 1-85032-298-8, 512 pages, 7.5 x 9.5 inches, paperbound
Price: US $36.95
Price: UK £26.95
Price: Canada $51.95

The book is, unfortunately, now out of print. International Thomson decided to drop their Computer Press division, and this title was one of those to be dropped after copies ran out. The copyright was returned to the author, who has now created an online version at http://www.scifac.ru.ac.za/compilers. This site also contains compressed downloadable files of the online edition, and files from which a paper copy may be produced on an HP Laserjet compatible printer.

Written to support a practically oriented course in programming language translation, this book combines theory, practical applications and the use of compiler writing tools to give students a solid introduction to the subject.

Key features of the book:

Table of Contents:

1 Introduction 2 Translator Classification and Structure 3 Compiler Construction and Bootstrapping 4 Machine Emulation 5 Language Specification 6 Simple Assemblers 7 Advanced Assembler Features 8 Grammars and their Classification 9 Deterministic Top Down Parsing 10 Parser and Scanner Construction 11 Syntax Directed Translation 12 Using Coco/R -Overview 13 Using Coco/R - Case Studies 14 A Simple Compiler - The Front End 15 A Simple Compiler - The Back End 16 Simple Block Structure 17 Parameters and Functions 18 Concurrent Programming.

(A more detailed list of the contents may be obtained here).

Preface

The preface to the book, giving a fuller overview and rationale, may be read here.

Errata and Feedback

The author maintains a list of errata detected since the book was published.

If you have read this book, the author would like to have your opinions, favourable or otherwise. He would also appreciate learning of other errata that you may discover. Contact him at the address above, or by email.

Sources on the Web

The latest versions of the files on the diskette were previously available for anonymous FTP from ftp://cs.ru.ac.za/pub/languages/textbook. That server is no longer operational; the files may now be obtained from the online web site at http://www.scifac.ru.ac.za/compilers/.

These incorporate corrections that have emerged since the book was published. The files are supplied as self-extracting MS-DOS executables within a "zip" wrapper. They may also be decompressed using LHA on other systems.

The files associated directly with the textbook are:

cocorc.exe         71 Kb  Minimal Coco/R for C          (Updated 2002)
cocorm.exe         76 Kb  Minimal Coco/R for Modula-2   (Updated 2002)
cocorp.exe         65 Kb  Minimal Coco/R for Pascal     (Updated 2002)

common.exe         93 Kb  Files common to all languages
csources.exe      350 Kb  C++ specific sources
msources.exe      345 Kb  Modula-2 specific sources
psources.exe      312 Kb  Pascal specific sources       (Updated October 1997)

fileio.exe         47 Kb  Modula-2 FileIO module

lha213.exe         43 Kb  LHArc decompressor
readme.1st         11 Kb  Installation and setup instructions
Other supplementary material and solutions to some problems are available on request to the author.