Programming in Scala, 2nd edition Study Notes