CS 426: Compiler Construction

Fall 2021

09:30 - 10:45AM Mondays and Wednesdays, 1304 Siebel Center

Course Number 43355 (3 hours) / 43356 (4 hours)


Teaching Staff

COVID-19 Guidelines

Course Content

Assignments

Textbook

Piazza

Lecture Notes

Homeworks and Exams

Project Description

Grading Policies

  UG or 0.75 unit grads 1-unit grads
MP1-MP4 40% 32%
Homeworks 20% 16%
Midterm Exam 15% 12%
Final Exam 25% 20%
Unit Project N/A 20%

Computing Facilities

General Course Policies

Incomplete MPs

Lateness

Cheating

You are NOT to copy solutions from ANY source (including, but not limited to, books, people, old class notes or handouts). While the pressures of many classes, homeworks, work and/or extracurricular activities can be great, this is never an excuse for copying solutions from others. "Helping" somebody by allowing them to "borrow" your homework is not doing them a favor either, but indicates your approval and active participation in such activities.  Refer to the Campus Code regarding academic integrity.  A first offense will result in a zero on the assignment or exam, as well as reducing the overall course grade by a whole letter grade. If you are aware of any breach of academic integrity, it is your responsibility to report it to the instructor.

Discussing your problems with other students, however, is encouraged and even highly recommended. This means asking someone to look at parts of your code to give you advice, asking them for suggestions when you face an obstacle, working out example exercises together that are not on an assigned homework, or just discussing any aspect of the material.  What you may not do is to copy or any in way use code or homework solutions written by anyone else or dictated by anyone else.  As responsible adults, you can draw the distinction between cheating and honest behavior: exercise your judgement and try to preserve the highest level of professional integrity in everything you do.

Bottom line: You may discuss difficulties with others and get occasional help with debugging but you must write your code entirely by yourself.

How to Get the Most out of this Course

  1. Read the text as it is quite thorough, with many examples worked out, good motivating discussions, and useful intuition.
  2. Participate actively in class: ask questions when you don't understand something, and share in the in-class exercises.
  3. Do the homeworks and project assignments ahead of time whenever possible.  Working madly to beat a deadline is a terrible way to learn!