CSCI 4570 Compilers Spring 2004
| Professor: | Krys J. Kochut | ||||||||||
| Texts: | Compilers. Principles, Techniques, and Tools by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman, Addison-Wesley 1986. | ||||||||||
| Grading: |
|
||||||||||
| Grading Scale: |
|
||||||||||
| Remarks: | In this class the students will study the principles of compiler design and implementation. We will concentrate on the organization of a simple but complete compiler, including the initial phases of a typical front-end. We will begin with scanners, then go on to various parsing techniques, type checking, syntax-directed translation, and code generation. We will also talk about symbol tables, error recovery and runtime systems. Discussions will include compiler compilers (scanner and parser generators), as well code generation and optimization. Each student is expected to design and implement a simple compiler (the details will be discussed later). All programming should be done in either C++ or C. Development in Java is also possible, but using compiler-compiler tools for Java may be more challenging. The programming project will be split into a few parts to make the development a large program manageable. Each student is expected to do his/her own work. You are not allowed to work in teams. All suspected cases of academic dishonesty will be handled in strict accordance with department and university policy. The grade of I (incomplete) is reserved for special cases only, such as a serious illness, and will be decided on individual basis. The course syllabus outlines a general plan for the course and deviations may be necessary.
|
||||||||||
| Project: |
|
||||||||||
| Exam dates: |
|