Scala exercices from Functional Programming Principles in Scala Martin O. Course