Re: They were Giants in those Days
"Jon \"maddog\" Hall via Ale" <[email protected]>
| Newsgroups | gmane.org.user-groups.ale |
|---|---|
| Message-ID | <CAM7HF_3BeAr5OKdiA-4XdR8+0T+TvB1bpz25P5wdCrVJ0wM=FA@mail.gmail.com> |
I first took a compiler class at Drexel University around 1973. At that time there were two books, one written in 1972 by Aho on "Parsing" and one written in 1973 by Ullman on "Compiling". Together the two books cost over 300 dollars...in 1973. My yearly tuition to Drexel, a private engineering school, was 2000 dollars that same year. I was lucky enough to have to buy both books as well as pay my tuition. Realizing these two books were a bit expensive, they mashed the two books together to create the first "Dragon Book" (nicknamed "The Green Dragon Book") in 1977. I used this for my MSCS that I started in 1974 and finished in 1977...(rats. I had to buy this one too...and it too was not cheap). Then I started teaching college in 1977. I asked my students to buy the Dragon Book, but then I realized that the "mashing" made it so not even Aho or Ullman could understand it. So I also made my students buy another compiler book by Lewis, Rosenkrantz and Stearns (LR&S) called "Compiler Design Theory", which allowed mere mortals to understand how a compiler might work. In fact LR&S had a complete compiler written in pseudo code in the appendix of the book. If you transcribed the pseudo code into real code you would probably get a working compiler. Most of my students never even opened "The Dragon Book" and they hated me for making them buy it. https://www.google.com/books/edition/Compiler_Design_Theory/b8AmAAAAMAAJ?hl=en Therefore in 1986 Al and Jeff tried again and got this one fairly good. It is known as "The Purple Dragon Book". I am not saying that the Dragon books were not worth it, but the early editions (to me) were a difficult slog. LR&S may not have had all of the "depth" of the Dragon Books, but quicksand also has a lot of depth. I took compiler theory twice, once in undergraduate and once in graduate studies, but I never really understood it until I had to teach it. I realized that when you are a student you can not understand 40% of the material and still get a passing grade. However, when you are teaching it you have to understand it ALL, because the part you do not understand is the part that they will ask the question on, and if you do not know the answer you will be the GOAT. So the first time I taught it I would sit in my office working on my lesson plan with about five books open and going between all of them looking for the answers. The second year I only needed two books open. Of course there are a lot of other compiler books today. It has been over thirty years since I actually taught compilers, so I am sure there are a lot of optimizations and issues of parallel programming and cache utilization as well as out-of-order execution considerations. However today I can go up to a whiteboard and give a good explanation of lexical analysis, syntactical analysis and code generation with some pretty good optimization talks without even breaking a sweat. And now you know the rest of the story. md On Mon, Jan 5, 2026 at 4:12 PM Pete Hardie via Ale <[email protected]> wrote: > We used the Dragon book in my compilers class > > Pete Hardie > -------- > Better Living Through Bitmaps > > On Mon, Jan 5, 2026, 16:00 lollipopman691 via Ale <[email protected]> wrote: > >> Alfred Aho explains Lex and YACC. Learning (f)lex and (bison)YACC >> changed my life, for better or for worse. >> >> https://www.youtube.com/watch?v=0ssGOC9m8Nk >> >> -- CHS >> _______________________________________________ >> Ale mailing list >> [email protected] >> https://mail.ale.org/mailman/listinfo/ale >> See JOBS, ANNOUNCE and SCHOOLS lists at >> http://mail.ale.org/mailman/listinfo >> > _______________________________________________ > Ale mailing list > [email protected] > https://mail.ale.org/mailman/listinfo/ale > See JOBS, ANNOUNCE and SCHOOLS lists at > http://mail.ale.org/mailman/listinfo > _______________________________________________ Ale mailing list [email protected] https://mail.ale.org/mailman/listinfo/ale See JOBS, ANNOUNCE and SCHOOLS lists at http://mail.ale.org/mailman/listinfo