This library provides abstractions and functions for evaluating images created in the vector graphics domain CodeWorld. The interface is mostly used as part of a Haskell programming task type on our e-learning platform Autotool.
Documentation is available on GitHub Pages.
The package provides an executable test-task
to replicate the grading process of Autotool in a terminal.
This currently only works on Unix systems (OSX untested, but likely works), Microsoft Windows is not supported.
First, follow the usual Student workflow:
- Copy a task from
examples/tasks
into the CodeWorld editor. - Work on the task until you think you've solved it.
- Paste your solution back into the template.
Now to simulate the grading process:
- Install the z3 theorem prover (
sudo apt-get install libz3-dev
or similar) - Install Haskell Stack
- Optionally set an alias for
stack run --stack-yaml run.yaml
- Execute
stack run --stack-yaml run.yaml examples/configs/<Task> <examples/tasks/<Task>
The submission will either be rejected or accepted and feedback be printed directly into the console. Running the stack command may take a while the first time, since a lot of dependencies will have to be installed.
Sample solutions for all tasks are provided in examples/solutions
for reference.