Planning and experience with a one-quarter course on compiler writing using Gries' book and structured programming

Computer/Information Sciences course s were first offered at UAB in 1971. By th e end of 1973, all courses specified in th e ACM Curriculum '68 had been offered a t least once, with the exception of IS (Compiler Construction). A major reason fo r this omission was that no member of th e faculty could claim to be particularl y knowledgable about compilers. Therefore a decision to offer such a course in th e Summer Quarter of 1974 implied a commitment to a learning process by one of th e faculty, as well as by the students. Thi s account of the learning process is offere d to other programs and faculty members wh o may find themselves in a similar position. The major unknownfrom the start wa s the extent to which it was reasonable t o expec t pilers students to write their ow n as part of the course. On com-the on e hand , able, this was regarded as highl y since the course would carry desir-3 semester-hours of graduate credit, an d should therefore be more demanding than I5 (the specification of which suggests writing a compiler as a group project). O n the other hand, compiler-writing has traditionally been regarded as a formidabl e task (this reputation probably arising ou t of the 17 person-years taken to write th e first FORTRAN compiler). Very littl e guidance could be found in the literatur e on this matter, but the goal was tentatively adopted that each student shoul d write his own simple compiler during th e quarter. Early Planning of the Cours e Possible textbooks for use with th e course were reviewed, quite superficially. Hopgood's excellent short summary', whic h had been used earlier for an undergraduat e version of ACM Course Al (Formal Language s and Syntactic Analysis), seemed to giv e too little aid to the students in writin g their own compilers. Cgmpiler Techni-du " edited by Pollack h , appeared to b e a state-of-the-art review by multipl e authors, not organized as a text book fo r students without prior experience i n compiler-writing. Lee's 1967 book Anatomy of a Compiler 3 showed its age, wit h algorithms expressed as flow charts, an d an appendix on the FORTRAN compiler fo r the IBM 1401. The most suitable boo k seemed to be Cries' Com .iler Constructio …