Late policy
6.035 follows a late policy similar to 6.828.
For the first project (scanner / parser), where you work alone, you receive a
full letter grade off of that project for each day it is late. Days begin
counting immediately from the deadline and are rounded up, e.g. five minutes
past the deadline is one day late.
For the remaining projects, each group has 72 late hours that they may
divide up among the lab assignments however they'd like, without asking or
telling us. However, no late hours may be used on the final optimizer project
deadline. Each day late in excess of 72 hours will incur a full letter grade
penalty on the entire group project component of your overall grade. Days are
counted as they are for the first project. Do not assume that late hours are
counted at a smaller granularity than hours. These late hours are intended for
cases where you fall behind due to illness, job interviews, MIT athletic
events, deadlines in other classes, etc. For extensions under extenuating
circumstances (e.g., you are sick for a week), we require a letter from one of
the student deans.
Collaboration
Although you may discuss the projects with anybody, you must develop the code
yourself. For the scanner/parser project, you must develop your code alone. On
all subsequent projects, you should work with your team members, but you may
not develop or share any code with other teams. You may collaborate on
the mini-quizzes, but you may not collaborate with anybody on the full
quizzes; doing so will result in a failing grade.
Do not post your lab or homework solutions on publicly accessible web sites or
file spaces; this enables cheating for students in future years.
Third-party Libraries
In 6.035, you build a compiler almost entirely from scratch. There are a few
allowed exceptions: you may use one of the approved parser generators,
described in the first project & athena handouts. You may use various
language APIs for working with collections and data types. However, there are
some restrictions on that. For example, users of Haskell may not use Haskell's
Data.Graph or Compiler packages. Any libraries beyond the
Java API or basic Scala libraries (not more advanced libraries, such as the
PackratParsers package) must be approvide by the TAs. In general, if
you are unsure of whether or not you are allowed to use a piece of software,
ask the TAs.
Class meetings
Lectures will be held on Mondays through Thursdays from 11:00am to 12:00pm in
36-156. There is not a lecture on every such day; for details, see the
schedule.
Staff