This tutorial demonstrates using the validity and genvalidity packages along with recursion schemes and both property-based and unit testing using tasty-quickcheck and tasty-hunit for a simple arithmetic expression evaluator.
First, let's update our project structure:
validity-tutorial/