Grading an assignment
To grade assignment e.g. ex1, create file ex1.
The file consists of one entry per submission.
An entry can be continued onto the next line either by terminating the line with a backslash or by prefixing the next line with whitespace.
Note: A new line within curly braces does not start a new entry.
Following is the formal structure of a submission entry:
entry:= students [ 'exempt' | unsigned number | [:] penalties ]Thus an entry can be a simple grade:
students:= student [ [,] students ]
student:= username | id
penalties:= penalty [ penalties ]
penalty:= amount [ {text} ]
amount:= signed number | errorcode [ ( expression ) ]
expression:= numerical expression with variable 'max'
chana 95or a list of penalties:
chana, danny:or an exemption:
-5 {no documentation}
e1
e2 (max/2) {only half wrong}
e3 (-5)
e4 {bad mistake}
e5 (5)
chana exemptIf expression is just an unsigned number, it assumes the sign of the associated errorcode. An entry with no grade or penalties e.g.
chanais ignored if there are no errorcodes. Otherwise it is effectively 100.
If errorcodes are used they must be defined in file ex1.errorcodes.
Following is the formal structure of an errorcode entry:
name:= [:] signed number [,] textand following are examples:
e1 -1 no documentation
e2 -2, wrong answer
e3: -3 whatever
New features to facilitate importing penalties from more than one source
If configuration option multiple_entries is set to true, more than one entry per submission is allowed.Entries are penalties i.e. structure is:
entry:= students [:] penaltiesSee above.
An entry is considered a new submission if none of the students are listed in earlier entries.
If at least one student in the entry is listed in an earlier entry, the entry is considered a continuation of the earlier entry's submission.
Of course, it is an error for an entry to continue more than one submission.
If configuration option multiple_files is set to true, entries may be split over more than one file.
The files carry an extension between 0 an 9.
For example, if files ex1.1 and ex1.2 exist, and file ex1 does not exist, they are used instead of it.
See Configuration options.