Abstract

Although a course in Compiler Development is common in both undergraduate and graduate computer science curriculum there has been little agreement on how to achieve a balance between theory and practice within a single semester course. This article proposes a new approach to teaching compiler development, to enable students to gain both the experience of writing a modular compiler and a theoretical background in compiler design, within the scope of a one semester course. The approach advocated is based upon the integration of the course project and the course lectures, enabling students to develop a modular compiler for a general purpose high level algorithmic language. The course project uses a simple parser generator and syntax-directed translation techniques to minimize the programming effort without oversimplifying the design of the compiler. The course was taught at Southern Methodist University to a senior undergraduate class, who developed and debugged useable compilers without the common symptom of major programming projects: programming to meet a deadline rather than a design.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call