Class Number: 1090
An introduction to compiler design, including the tools and software design techniques required for compiler construction. Students construct a working compiler using appropriate tools and techniques in a semester-long laboratory project. Lectures combine practical topics to support lab work with more abstract discussions of software design and advanced compilation techniques.; Prerequisite(s): CMSC 245 or instructor consent; concurrent enrollment in this and two other CMSC lab courses requires instructor consent; Enrollment Limit: 24; Lottery Preference(s): 1. CS senior and junior majors 2. Sophomores and first-year students 3. Senior CS minors 4. Junior CS minors Natural Science, C: Physical and Natural Processes (; Hav: NA, C)