IVLE allows lecturers and tutors to create worksheets, which are presented to students, optionally, for assessment.

Worksheets are reStructuredText (rich text) documents which can present students with information or tutorials, much like a textbook. For example, we might explain that "the ``print`` statement in Python lets you print text to the screen".

We can use any reStructuredText markup, such as **bold** and `links <http://ivle.org>`_. We can also embed exercises. For example, we might invite students to "try out the ``print`` statement in the following exercise".

Beginning a line with ``.. exercise:: <exercise-name>`` embeds an exercise in a worksheet, like this:

.. exercise:: hello

Now, the student may try out the above exercise, and submit it as many times as (s)he wishes. Once they have it correct, they will receive a point on their assessment.

Here is a second exercise. This one involves writing functions, and has multiple parts. The test suite will test each part individually.

.. exercise:: factorial
