Course Description | This course covers the design and implementation of translator-oriented systems software, focusing in particular on compilers. Topics covered include lexical analysis, parsing, and syntax-directed code generation, as well as interpreters and just-in-time (JIT) compilers. Note: This class has a significant programming component. This paper discusses some of the reasons (there are more than one might think) why Compiler Design matters in a Computer Science education. | ||||||||||||||||||
Course Objectives and Expected Learning Outcomes |
|
||||||||||||||||||
Prerequisites | Courses: CSc 345 and CSc 352. CSc 372 is recommended. Knowledge: Proficiency in programming using C. Familiarity with software development in a Unix/Linux environment, including tools such as editors, debuggers, make, etc. | ||||||||||||||||||
Meeting Times and Places: |
|
||||||||||||||||||
Textbook: [optional] | T. Mogensen, Introduction to Compiler Design. A free version of this book is available online as Basics of Compiler Design. | ||||||||||||||||||
Instructor |
|
||||||||||||||||||
Teaching Assistant |
|
||||||||||||||||||
General Information | Class Policies Grading Policies and Procedure Course Topics Documentation and Tutorials Class Notes Important Dates |
||||||||||||||||||
Project | General information C-- language spec Assignments |
||||||||||||||||||
Communication | Announcements (and, more generally, communications) outside class hours will be made through Piazza. Please sign up for this class in Piazza if you have not done so already. It is your responsibility to make sure that you are signed up for this class in Piazza and to read postings and announcements in a timely manner. Not doing so is not an acceptable reason for failing to meet any announced changes to specifications or deadlines. | ||||||||||||||||||
Accessibility and Accommodations | It is the University's goal that learning experiences be as accessible as possible. If you anticipate or experience physical or academic barriers based on disability or pregnancy, please let me know immediately so that we can discuss options. You are also welcome to contact Disability Resources (520-621-3268) to establish reasonable accommodations. For additional information on Disability Resources and reasonable accommodations, please visit http://drc.arizona.edu/. If you have reasonable accommodations, please plan to meet with me by appointment or during office hours to discuss accommodations and how my course requirements and activities may impact your ability to fully participate. Please be aware that the accessible table and chairs in this room should remain available for students who find that standard classroom seating is not usable. | ||||||||||||||||||
Code of Conduct | The Arizona Board of Regents’ Student Code of Conduct, ABOR Policy 5-308 prohibits threats of physical harm to any member of the University community, including oneself (link). | ||||||||||||||||||
Student Code of Academic Integrity | Students are encouraged to share intellectual views and discuss freely the principles and applications of course materials. However, graded work/exercises must be the product of independent effort unless otherwise instructed. Students are expected to adhere to the UA Code of Academic Integrity as described in the UA General Catalog (http://deanofstudents.arizona.edu/policies-and-codes/code-academic-integrity). The class policy on academic integrity, including permissible and impermissible actions and penalties for violations, is available here. | ||||||||||||||||||
Additional Resources for Students | UA Non-discrimination and Anti-harassment policy: http://policy.arizona.edu/human-resources/nondiscrimination-and-anti-harassment-policy Student Assistance and Advocacy information is available at: http://deanofstudents.arizona.edu/student-assistance/students/student-assistance. Confidentiality of Student Records: http://www.registrar.arizona.edu/ferpa/ferpa-compliance |