Name Ready to use? Published? What's it used for?
Code

Mark code provided by the student by running it and a series of validation and marking tests.

The validation tests are used to reject an answer if the student has misunderstood the task, for example if they haven't defined a required variable or function.

Marking tests check properties of the student's code. Each test awards a proportion of the available credit if it is passed.

You can optionally show the student the STDOUT and/or STDERR when running their code.

You can give a preamble and postamble which are run before and after the student's code, and also modify the student's code before running it.

Codeword match

The student must enter the given codeword. Any commas or spaces are stripped out before it's parsed.

Give a numerical input for an expression

The student gives a point $x$ at which to evaluate a given function $f$. The answer is correct if $f(x)$ is the expected value.

List of codewords

The student must enter the given list of codewords.

List of numbers

The answer is a comma-separated list of numbers.

The list is marked correct if each number occurs the same number of times as in the expected answer, and no extra numbers are present.

You can optionally treat the answer as a set, so the number of occurrences doesn't matter, only whether each number is included or not.

Number entry modulo

The student's answer should be equivalent to the expected answer modulo the base set by the question author.

Quantity with units

The student enters a quantity with units.

Spreadsheet

An editable spreadsheet. Ranges of cells can be disabled, and you can specify ranges of cells to be marked. A cell is marked correct if its value is equal to the value in the expected answer spreadsheet.

True or False

The student must write T or True for 'true', or F or False for 'false'. (Case doesn't matter)

Write a permutation in cycle notation

The student must write a permutation in cycle notation. You can optionally require the cycles to be disjoint and/or all of length 2.

Write a permutation in two-line form

The student must write out a permutation (an element of $S_n$) in two-line form: the top line always contains the numbers 1 to $n$, and on the bottom line they must write the numbers that they are mapped to.

Yes/no

The student is shown two radio choices: "Yes" and "No". One of them is correct.

Help with custom part types