Re: compiler books... [from my bookshelf]

decvax!yetti!oz (Ozan Yigit)
Sun, 19 Jul 87 14:27:55 edt

          From comp.compilers

Related articles
Re: compiler books... [from my bookshelf] decvax!yetti!oz (1987-07-19)
Re: compiler books... [from my bookshelf] amdcad!sun!rtech!rtech!mark (1987-07-21)
Re: compiler books... [from my bookshelf] steve@hubcap.clemson.eduStevenson) (1987-07-23)
| List of all articles for this month |

Date: Sun, 19 Jul 87 14:27:55 edt
From: decvax!yetti!oz (Ozan Yigit)

A simple run-down on some of the compiler books from my shelf. This run-down
is very subjective. Your milage with these books may vary.

Dragon Books: Aho/Ullman | Aho/Sethi/Ullman

The new one is more readable than the old one, and it is probably better. I
find both books to be sometimes inpenetrable. The pragmatic parts of both
books are quite weak. I do find the new production/semantic rule tables
useful, but again, no concrete implementation samples.

T&P of Compiler Writing: Tremblay/Sorensen

Much more pragmatic book in many ways. When coupled with the sister book
containing a complete compiler implementation, it is probably one of the
better books for the practicing compiler writer. The chapter on "Intermediate
Representation" is very weak. The chapter on optimization is better.

Compiler Construction for Digital Computers: Gries

Probably one of the best books ever written on the subject, and despite its
age, it is still better than some of the newer books. It has the right blend
of theory and practice, and I wish Gries got around to writing a more
up-to-date version of this book. But I understand that his current research
interests are different, so this may be an empty hope.

Compiler Construction: Weite/Goos

An interesting book with heavy emphasis on Attribute Grammars. Its appendix
present some important algorithms on directed graphs. It is probably useful as
a "complementary" book, not as a "single source" book.

The Design of an Optimizing Compiler: Wulf/others

A very important book that describes one of the best-optimizing compilers
to-date (BLISS). It contains some very pragmatic discussion of the compiler,
and the discussion of the optimization passes are especially useful.

Engineering a Compiler: Anklam/Cutler/others

DEC's book on the PL/I compiler, and the C compiler (The Beast and The
Beauty). A remarkable "practitioner's" book. Somewhat short on theory, but
neverthaless a very good expose of two production compilers sharing a
back-end. [[DEC guys had the same idea UofT had: using a virtual-engine to get
the work done: Dec has TBL, UofT has S/SL.]]

Brinch Hansen on Pascal Compilers: Hansen

This is a hacker's guide to pascal. Contains a complete implementation of a
Pascal-subset compiler, with a recursive- descent parser, and a pascal-machine
for code generation. Probably useful for a beginner-compiler-hacker. It is in
the class of other books like Hendrix's Small-C book, or Ben-Ari's Pascal-S

Compiler Construction: T & P: Barrett/Bates/others..

This is a compiler book. I am quite indifferent to both editions of
this book. The second edition may be supplemented with a diskette containing a
parser generator, and a pascal subset compiler ($$). The second edition does
have some minor pieces of code thrown in, probably to get the PRACTICE part in
the title.

Other Sources:

UofArizona Tech Reports by Henson, Davidson and others on code generation,
peephole optimization, etc. Also get their Y compiler distribution, which
includes the PO optimizer, one of the better re-targetable peephole optimizers
written to date. You can actually look at the source !!

UofT Tech reports on SSL, ConEuc, and especially: An orthogonal Model For Code
Generation by James R. Cordy. This report contains some very important ideas,
and it is a must for those writing production-quality code generators.

GNUCC: If you can penetrate the C code, it is an interesting reading. In
general, it seems to optimize better than the BSD4.2 C compiler, and it is a
register-hog, just like the VMS C compiler. [I did examine its assembler
output for a standard test program I previously used for the VMS and BSD

Disclaimer: These are my subjective views. I am not a compiler specialist,
just a VERY INTERESTED reader/hacker.

Usenet: [decvax|ihnp4]!utzoo!yetti!oz, ......!seismo!mnetor!yetti!oz
Bitnet: oz@[yusol|yulibra|yuyetti], Phonet: [416] 736-5257 x 3976

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.