## Assignment Guidelines

The general principles outlined in this section apply to all
assignments. The first and most important rule is, use your brain --
the assignments are not exhaustive and sometimes leave room for
different interpretations. Pick the most reasonable. Do not try to
find loopholes: technically correct is «not» the best kind of
correct.

Do not print anything that you are not specifically directed to.
Solutions which print garbage (i.e. anything that wasn't specified)
will fail tests.

### Submitting Solutions

The easiest way to submit a solution is this:

    $ cd ~/pb152/01
    <edit files until satisfied>
    $ pb152 submit

The number of times you submit is not limited (but see also below).
NB. Only the files listed in the assignment will be submitted and
evaluated.  Please put your entire solution into these existing
files.

You can check the status of your submissions by issuing the
following command:

    $ pb152 status

In case you already submitted a solution, but later changed it, you
can see the differences between your most recent submitted version
and your current version by issuing:

    $ pb152 diff

The lines starting with ‹-› have been removed since the submission,
those with ‹+› have been added and those with neither are common to
both versions.

### Evaluation

There is a set of automated tests that decide whether you passed or
not. If you fail and do not understand why, ask for help in the
discussion forum or in the online chat. You do not need to provide
too many details (especially try to avoid discussing the specifics
of your solution) – we can look at what you submitted and how it
failed. We will do our best to answer promptly.

If you submit multiple times before a given deadline, only the most
recent submission is evaluated (and each submission is evaluated at
most once). You will find your latest evaluation results in the IS
in notepads (one per assignment).
