Assignments from "Functional Programming Principles in Scala"