What This Document Is
This document is a final examination for Stony Brook University’s CSE 304: Compiler Design course, administered in Fall 1997. It’s a comprehensive assessment designed to evaluate a student’s understanding of the principles and techniques covered throughout the semester. The exam is structured with a mix of theoretical questions and practical application problems, geared towards demonstrating proficiency in compiler construction. Separate versions of the exam were prepared for undergraduate and graduate students.
Why This Document Matters
This resource is invaluable for students currently enrolled in, or planning to take, a compiler design course. It’s particularly helpful for those seeking to gauge the depth and breadth of knowledge expected at the upper-level undergraduate/graduate level. Studying past exams – and understanding the *types* of questions asked – is a proven strategy for exam preparation. Reviewing this exam can help you identify areas where your understanding might need strengthening and refine your problem-solving approach.
Topics Covered
* Lexical Analysis & Specification (Lex)
* Translation of Document Formatting Languages (TeX to HTML)
* Formal Languages & Regular Expressions
* Context-Free Grammars
* Parsing Techniques (LL(1) parsing)
* Syntax-Directed Translation
* Attribute Grammars
* Semantic Analysis & Symbol Tables (Decaf language context)
What This Document Provides
* A full set of exam questions covering core compiler design concepts.
* Questions designed to assess understanding of both theoretical foundations and practical implementation.
* Problems requiring the creation of lexical specifications.
* Exercises focused on grammar analysis, including FIRST and FOLLOW set calculations and LL(1) parsing determination.
* Questions relating to syntax-directed translation and attribute evaluation.
* Insight into the expected format and difficulty level of assessments in a rigorous compiler design course.