15-122 Principles of Imperative Computation, Spring 2016

Assignments

Written Assignments

Programming Assignments

The code handout and the writeup for each programming assignment is available through Autolab.

You can also download the code handout from here without logging in to Autolab. Please don't download anything in this directory that hasn't been released on Autolab, or you may get an invalid version of the assignment.

Deadlines and Late Days

All written homeworks are due at 5:30pm on the due date. There are no late days for written homework, but written homework can be turned in by the next lecture for a significant (6-point) penalty.

All programming assignments are due at 10:00pm on the due date. You get four free late days (or grace days), which means that for exactly four programming deadlines you can turn in your assignment within 24 hours after the deadline (max one day per deadline). Autolab handles these late days automatically - you don't have to email an instructor or TA, just turn in the assignment between 1 minute late and 24 hours after the deadline. Aside from this, late work will not be accepted without advance permission from the instructor.

Collaboration and Academic Integrity

The form we ask all students to sign is here.

Please read the University Policy on Academic Integrity carefully to understand the penalties associated with academic dishonesty at Carnegie Mellon. In this class, cheating/copying/plagiarism means copying all or part of a program or homework solution from another student or unauthorized source such as the Internet, knowingly giving such information to another student, or giving or receiving unauthorized information during an examination. In general, each solution you submit (quiz, written assignment, programming assignment, or exam) must be your own work. In the event that you use information written by another person in your solution, you must cite the source of this information (and receive prior permission if unsure whether this is permitted). It is considered cheating to compare complete or partial answers, discuss details of solutions, read other students’ code or show your code to other students, or sit near another person who is taking the same course and try to complete the assignment together. It is a violation of this policy to hand in work for other students.

Your course instructor reserves the right to determine an appropriate penalty based on the violation of academic dishonesty that occurs. Violations of the university policy are likely to result in severe penalties including failing this course and possible expulsion from Carnegie Mellon University. If you have any questions about this policy and any work you are doing in the course, please feel free to contact your instructor for help.

We will be using the Moss system to detect software plagiarism.

It is not considered cheating to clarify vague points in the assignments, lectures, lecture notes, or to give help or receive help in using the computer systems, compilers, debuggers, profilers, or other facilities, but you must refrain from looking at other students’ code while you are getting or receiving help for these tools. It is not cheating to review graded assignments or exams with students in the same class as you, but it is considered unauthorized assistance to share these materials between different iterations of the course. Do not post code from this course publicly (e.g. to Bitbucket or GitHub).

Valid CSS! Valid XHTML 1.0 Strict