exercises of the book functional programming in scala