CS 321 Programming Languages

Fall 2017

Academic integrity

Plagiarism is strictly forbidden and will not be tolerated. Violations will be reported to the disciplinary council of the School of Engineering and the unit in which plagiarism was detected will receive 0 points. A “unit” is defined to be an assignment, project or an exam.

You are encouraged to study together with your friends. You may discuss course topics and assignments with other people; however, all assignments are individual unless otherwise specified. This means that you have to write down your own solutions for the problems given as assignments.

Rule of thumb: If you are looking at the solution to a problem that was written by somebody else, or if you are making your solution available to somebody else in whatever format (e.g. verbally, by sending an email, by instant messaging, by writing on the board, etc.), you are violating the academic integrity. If you are in doubt whether an action you take is a violation or not, don’t do it!

See a longer version of the honor code, adapted from Stanford University Computer Science Department’s Honor Code.


We will be using Piazza for offline discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and myself. Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza. You may ask questions you have regarding the assignments, course topics, the project, etc. Caution: NEVER post assignment solutions to Piazza.

Find our class page at: http://www.piazza.com/.


All the exams are individual, unless otherwise noted.

In-class exams are closed-book, closed-notes and no electronic material is allowed, unless otherwise announced. Use of cell phones is not allowed. No material (e.g. pens, pencils, erasers, etc.) can be shared during the exams.

It is possible to take a make-up exam if you miss an exam based on a valid excuse. However, you can be assured that the make-up exam will be significantly more difficult than the regular exam. A formal letter (e.g. a doctor’s report) should be submitted for any kind of excuses. A make-up will be granted only for one missed midterm exam. The make-up exam will take place at the end of the semester.


Grading will be made according to the following weights:

  • Midterm Exam I and II: 30% each
  • Final Exam: 40%

Letter grade is determined based on a curve.

You may request a regrade on any graded item within 1 week after the corresponding scores have been posted. After 1 week, regrade requests will not be accepted. To request a regrade, email the instructor. Your grade may go up or down after the regrade.

Coding Standard

Ugly-looking code will be penalized. Always label your files with your name, using a comment block at the very top of the file. Indent your code properly.


Attendance to the lecture will not be recorded except for statistical purposes (i.e. will not affect your grade).

If you are late, do not use the stage-level door to enter the classroom. Use the back-side doors instead. Pay extra care not to create disturbance.

The course policy is tentative; the instructor reserves the right to change the policy any time. You will be notified in this case.