We expect you to submit all assignments on time.
Any project submitted after the deadline will incur a 5 point penalty for each
day of delay.
For extensions under extenuating circumstances (e.g., you are
sick for a week), we require a letter from one of the student deans to waive the penalties.
Although you may discuss the projects with anybody, you must develop the code
yourself or with your approved team members.
The first two assignments will be individual assignments.
On all subsequent projects, you should work with your team members, but you may
not develop or share any code with other teams.
Do not post your lab or homework solutions on publicly accessible web sites or
file spaces; this enables cheating for students in future years.
Compiler Building and Running
All projects in the class will be developed in C++. In order to avoid compatibility issues,
we have put together a virtual-box virtual machine
with the latest version of Ubuntu that
you can use to develop your software. We will be using that VM to test your submissions, so it is your responsibility
to make sure your code compiles and runs on it. The default password for the VM is "IwillgetanA". (The VM is about 2GB to download and expands to 4GB;
if that is too large for you to download, you can also test your code on athena).
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
Any libraries beyond the C++ STL must be approved by the TA. In
general, if you are unsure of whether or not you are allowed to use a piece of
software, ask the TA.
Lectures will be held on Tuesdays and Thursdays from 11:00am to 12:00pm in
rooms 4-237 TR.