Problem Set Instructions
This course will have 10 problem sets all of which will involve
writing programs in OCaml. Unless specified otherwise,
students
are expected to work individually on the problem sets.
Students are encouraged to discuss problem sets with their peers
and to use the Piazza web site. Where is the line that's not to
be crossed? Everyone should be able to walk away from a discussion
without having recorded code or diagrams, everyone should understand
it well enough to reproduce the solution on their own.
We will be using the OCaml programming language running on a
(rather large!) virtual unix machine. Problem set 1 includes
instructions for installing the virtual machine on your computer.
The virtual machine includes the
Atom
text editor configured for editting OCaml code. The VM also
includes the
Sublime Text editor
as well as the classic Emacs editor, both of which are also
pre-configured for editting OCaml code. You can use whichever
one you like.
We will also be using a library of OCaml resources,
i.e., the
Universe
for working with graphics and animation.
sets of libraries of OCaml code. Installing the virtual machine
is part of the first problem set and will be covered in detail in
the first lab meeting.
Coding is a social activity --- the principal consumer of your code
is a person, posssibly someone else, possibly a future you. For this
reason, grading of code will take into account the appearance of the
code. It should be highly readable with perfect indentation and spacing
and excellent naming. Code texture (as its called) will account for
20% of the grade assigned for the code.
In order to solve a problem set, create a folder named with your
surname followed by the problem set number. For example, I would
use a folder named Muller1 for problem set 1. All of the
java source files for your program should be housed in that
folder. When your program is complete and you are ready to submit
it, control-click on the folder and you will see an option
to Compress the folder. This will create a zip file that you
can upload to the appropriate folder on the course Canvas website.
If you are working with a partner on a pair problem set, your team
should submit only one folder. The folder name should include both
surnames with the alphabetically least first. If I was working with
Mary Adams on problem set 3, we would house our work in a folder named
AdamsMuller3 and we would submit AdamsMuller3.zip.
Unless specified otherwise, problem sets must be submitted for
grading by midnight on the specified due date. Extensions for problem
set deadlines are granted only for documented medical problems or
other family emergencies. See the