Assignments written mainly in Agda but also Haskell