Compiler Construction for Digital Computers
Compiler Construction for Digital Computers
A new approach to teaching a first course in compiler construction
SIGCSE '76 Proceedings of the ACM SIGCSE-SIGCUE technical symposium on Computer science and education
ACM SIGCSE Bulletin - Special issue on computer science curricula
Design and use of instructional tools for computer science
SIGCSE '78 Papers of the SIGCSE/CSA technical symposium on Computer science education
Principles of Compiler Design (Addison-Wesley series in computer science and information processing)
Principles of Compiler Design (Addison-Wesley series in computer science and information processing)
Hide and show: using real compiler code for teaching
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Hi-index | 0.00 |
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.