On Sun, 2021-06-20 at 23:13 -0700, Chuck Guzis via cctalk wrote:
In an earlier message, I referred to the Aho et al.
"Dragon Book" and
then incorrectly cited the 1986 "Red Dragon Book". My reference was
the 1977 "Green Dragon Book", also by Aho et al, but carrying the title
of "Principles of Compiler Design".
Gotta keep my dragons straight.
When I was teaching compiler classes, I liked Richard J. Le Blanc's
"Crafting a Compiler." I used Waite and Goos once. It was precise but a
bit too terse for the students. The compiler structure I taught was
based upon work of Frank de Remer and Tom Pennello, but their book
"Compiler Construction by Hand and by Tool" never saw print. Frank de
Remer simplified LR with its potentially exponential growth, to SLR and
LALR in his MIT Ph.D. thesis. Yacc (written by Robert Corbett, still a
denizen of the Fortran committees) is a LALR parser generator. I use
the generator written by Al Shannon when he was Charlie Wetherell's
student, now updated, which implements David Pager's algorithm that
generates a parser that is LR where necessary and LALR or SLR or LR(0)
where possible.
--Chuck